phpmd failed Warning: count(): Parameter must be an array

  • Författare
  • Meddelande
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11176
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

phpmd failed Warning: count(): Parameter must be an array

Inlägg25 feb 2018, 17:18

Hej, har fått ett för mig nytt fel vid dbwebb publish redovisa, klagar på
phpmd failed: './me/redovisa/redovisning.php'
PHP Warning: count(): Parameter must be an array of an object that implements Countable in phar: ///home/saxon/students/phar/bin/phpmd/vendor/pdepend/src/main/php/PDepend/Metrics/Analyzer/InheritanceAnalyzer.php on line 204

Får felet för alla filerna i redovisa. Några tips?


Valideringsfelet kan ha att göra med uppgraderingen till PHP7.2.

Ser ut som jag behöver uppgradera validatorn phpmd (för att stödja PHP 7.2) phpmd/phpmd#501 Ni kan ignorera det felet tills jag fixat det.
...
..:
.... /mos
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11176
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: phpmd failed Warning: count(): Parameter must be an arra

Inlägg02 mar 2018, 12:51

Det verkar inte finnas en snabb eller lätt fix så jag har disablat phpmd i kursrepot, gör dbwebb update så slipper du valideringen med phpmd.

Jag försöker få lite hjälp hos phpmd, låt se om/när det sker.
https://github.com/phpmd/phpmd/issues/553
...
..:
.... /mos
Användarvisningsbild

emsa16

troubleshooter

  • Inlägg: 185
  • Blev medlem: 31 dec 2015, 10:29

Re: phpmd failed Warning: count(): Parameter must be an arra

Inlägg23 mar 2018, 21:49

Phpmd är fortfarande aktiverat i ramverk1-report. Finns det något sätt man kan stänga av det själv? Detta fel kommer upp så många gånger att eventuella andra valideringsfel drunknar i mängden.
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11176
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: phpmd failed Warning: count(): Parameter must be an arra

Inlägg21 maj 2018, 12:06

Vi fick stänga av phpmd i vårens kurser men tar nya krafter inför hösten. Om man bygger om phpmd på egen hand så fungerar det igen, men det vore dumt att aktivera phpmd nu på slutet av terminen.

Vi siktar på hösten, då satsar vi på phpmd igen.
...
..:
.... /mos
Användarvisningsbild

emsa16

troubleshooter

  • Inlägg: 185
  • Blev medlem: 31 dec 2015, 10:29

Re: phpmd failed Warning: count(): Parameter must be an arra

Inlägg21 maj 2018, 17:50

Jag satt ett tag och kämpade med detta, drog ner ant och fixade så att jag till slut hade min phar-fil. Sedan funderade jag på vart jag skulle lägga den så att validate hittar den och det var då jag insåg att valideringen ju sköts helt och hållet på studentservern.... :oops:
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11176
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: phpmd failed Warning: count(): Parameter must be an arra

Inlägg21 maj 2018, 18:01

Man kan köra lokal validering med tex dbwebb-validate example om man installerar kommandot dbwebb-validate.

Även make validate what=example funkar (om man gjort make install och byter ut bin/phpmd mot den nya varianten).

Men det är lite pilligt, och jag undviker att peta på studentservern nu när det är sluttampen av säsongen.
...
..:
.... /mos
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11176
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: phpmd failed Warning: count(): Parameter must be an arra

Inlägg19 jun 2018, 08:18

Om man installerar phpmd med composer så undviker man problemet, det är bara phar-filen som inte är up-to-date.

På studentservern har jag nu installerat phpmd via composer och slår på validering med phpmd igen, i de repon där kurser startar i lp1.
...
..:
.... /mos
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11176
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: phpmd failed Warning: count(): Parameter must be an arra

Inlägg14 aug 2018, 09:11

Här är en länk till den fungerande versionen av phpmd som nu ligger på studentservern och som är byggd enligt https://github.com/phpmd/phpmd/issues/553

Det verkar som det inte händer jättemycket med projektet phpmd på GitHub för tillfället, releasemässigt iallafall.
...
..:
.... /mos
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11176
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: phpmd failed Warning: count(): Parameter must be an arra

Inlägg04 nov 2019, 12:42

Gänget bakom phpmd har nu kommit igång igen och kodad en ny version. Deras förslag är att man nu installerar phpmd från GitHub releases.
https://github.com/phpmd/phpmd/releases

Dock har de lyckats behålla problemet med "Count" på PHP 7.2, du kan läsa om det på:
https://github.com/phpmd/phpmd/pull/675

Troligen skall det fixas inom kort, men om du kör PHP 7.2 så bör din Makefile vara konfigurerad så att den hämtar phpmd från min patchade variant.
Kod: Markera allt
   curl -Lso $(PHPMD) http://www.student.bth.se/~mosstud/download/phpmd && chmod 755 $(PHPMD)


När saker är fixade så bör denna nedladdningslänken istället vara den riktiga.
Kod: Markera allt
   curl -Lso $(PHPMD) https://github.com/phpmd/phpmd/releases/download/2.7.0/phpmd.phar && chmod 755 $(PHPMD)


Här är den nedladndingslänk som visas på dokumentationssidan, men den fungerar inte och oklart om den kommer fungera framöver (finns github issue som diskuterar problemet).
Kod: Markera allt
   curl -Lso $(PHPMD) http://static.phpmd.org/php/latest/phpmd.phar && chmod 755 $(PHPMD)
...
..:
.... /mos

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 25 gäster