From ac8cc35ea63dffcc383a33e2d60a18a16d5f3055 Mon Sep 17 00:00:00 2001 From: Alies Lapatsin Date: Mon, 13 Feb 2023 21:57:01 +0100 Subject: [PATCH 1/2] Update dependencies, use Psalm on CI --- .github/workflows/psalm.yml | 33 +++++++++++++++++++++++++++++++++ composer.json | 5 +++-- psalm-baseline.xml | 17 +++++++++++++++++ psalm.xml | 22 ++++++++++++++++++++++ src/HtmlCard.php | 5 ++++- 5 files changed, 79 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/psalm.yml create mode 100644 psalm-baseline.xml create mode 100644 psalm.xml diff --git a/.github/workflows/psalm.yml b/.github/workflows/psalm.yml new file mode 100644 index 0000000..1b2f90d --- /dev/null +++ b/.github/workflows/psalm.yml @@ -0,0 +1,33 @@ +name: Psalm + +on: + push: + paths: + - '**.php' + - 'psalm*' + +jobs: + psalm: + name: psalm + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: '8.2' + extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl + coverage: none + + - name: Cache composer dependencies + uses: actions/cache@v3 + with: + path: vendor + key: composer-${{ hashFiles('composer.lock') }} + + - name: Run composer install + run: composer install -n --prefer-dist + + - name: Run Psalm + run: ./vendor/bin/psalm --shepherd diff --git a/composer.json b/composer.json index eca6ed9..2a004f3 100644 --- a/composer.json +++ b/composer.json @@ -12,11 +12,12 @@ "license": "MIT", "require": { "php": ">=8.0", - "laravel/nova": "^4.0" + "laravel/nova": "^4.20" }, "require-dev": { "orchestra/testbench": "^7.0", - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^9.6 || ^10.0", + "vimeo/psalm": "^5.6" }, "repositories": [ { diff --git a/psalm-baseline.xml b/psalm-baseline.xml new file mode 100644 index 0000000..7b648e0 --- /dev/null +++ b/psalm-baseline.xml @@ -0,0 +1,17 @@ + + + + + $htmlContent + + + $htmlContent + + + render + + + HtmlCard + + + diff --git a/psalm.xml b/psalm.xml new file mode 100644 index 0000000..4f1ad3a --- /dev/null +++ b/psalm.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + diff --git a/src/HtmlCard.php b/src/HtmlCard.php index bf21ccf..82cfa59 100644 --- a/src/HtmlCard.php +++ b/src/HtmlCard.php @@ -44,7 +44,10 @@ public function html(string $htmlContent): static /** Set Markdown code to display in a card (converted into HTML). */ public function markdown(string $markdownContent): static { - $htmlContent = App::make(MarkdownConverter::class)::parse($markdownContent)->toHtml(); + /** @var \InteractionDesignFoundation\HtmlCard\MarkdownConverter $converter */ + $converter = App::make(MarkdownConverter::class); + + $htmlContent = $converter::parse($markdownContent)->toHtml(); return $this->html($htmlContent); } From 838fee9360e8fd98d7d1655b2e4977795efe40c1 Mon Sep 17 00:00:00 2001 From: Alies Lapatsin Date: Mon, 13 Feb 2023 21:59:22 +0100 Subject: [PATCH 2/2] Fix installation on CI --- .github/workflows/psalm.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/psalm.yml b/.github/workflows/psalm.yml index 1b2f90d..9618ed1 100644 --- a/.github/workflows/psalm.yml +++ b/.github/workflows/psalm.yml @@ -27,7 +27,9 @@ jobs: key: composer-${{ hashFiles('composer.lock') }} - name: Run composer install - run: composer install -n --prefer-dist + run: | + composer config "http-basic.nova.laravel.com" "${{ secrets.NOVA_USERNAME }}" "${{ secrets.NOVA_4_LICENSE_KEY }}" + composer install -n --prefer-dist - name: Run Psalm run: ./vendor/bin/psalm --shepherd