eikek / meth

Commandline client for mediathekview
MIT License
4 stars 0 forks source link

errors while searching #9

Closed Wurzelmann closed 2 years ago

Wurzelmann commented 2 years ago

Almost every time while searching, there are errors, the search crashes and I only get a stack trace. Example:

meth report station:orf

generates

[...]
[ORF] Ex-Kriegsreporterin über Kriegsverbrechen <00:08:08, Monday, April 18, 2022 at 9:51:29 PM Central European Summer Time>Exception in thread "main" javax.xml.stream.XMLStreamException: ParseError at [row,col]:[13,136]
Message: The reference to entity "support" must end with the ';' delimiter.
        at java.xml/com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:652)
        at meth.settings$Settings.$anonfun$listUrl$1(settings.scala:67)
        at fs2.Task$.$anonfun$delay$1(Task.scala:191)
        at fs2.Task$.$anonfun$suspend$2(Task.scala:199)
        at fs2.util.Attempt$.apply(Attempt.scala:12)
        at fs2.Task$.$anonfun$suspend$1(Task.scala:199)
        at fs2.internal.Future.step(Future.scala:53)
        at fs2.internal.Future.listen(Future.scala:30)
        at fs2.internal.Future.runAsync(Future.scala:69)
        at fs2.internal.Future.run(Future.scala:79)
        at fs2.TaskPlatform$JvmSyntax.unsafeRun(TaskPlatform.scala:14)
        at meth.movielist$.listUrl$lzycompute(movielist.scala:17)
        at meth.movielist$.listUrl(movielist.scala:17)
        at meth.movielist$.$anonfun$isListCurrent$1(movielist.scala:81)
        at scala.runtime.java8.JFunction0$mcZ$sp.apply(JFunction0$mcZ$sp.java:23)
        at fs2.Task$.$anonfun$delay$1(Task.scala:191)
        at fs2.Task$.$anonfun$suspend$2(Task.scala:199)
        at fs2.util.Attempt$.apply(Attempt.scala:12)
        at fs2.Task$.$anonfun$suspend$1(Task.scala:199)
        at fs2.internal.Future.step(Future.scala:54)
        at fs2.internal.Future.listen(Future.scala:30)
        at fs2.internal.Future.runAsync(Future.scala:69)
        at fs2.internal.Future.run(Future.scala:79)
        at fs2.TaskPlatform$JvmSyntax.unsafeRun(TaskPlatform.scala:14)
        at meth.main$.main(main.scala:34)
        at meth.main.main(main.scala)

OS: Debian 11.3 meth: latest (meth-0.0.3)

eikek commented 2 years ago

Indeed, quite strange. I think the URL http://zdfmediathk.sourceforge.net/akt.xml is not working anymore. This is being downloaded at the end to check for a new "filmlist". It gives a 404 to me.

Wurzelmann commented 2 years ago

I tried the three following urls for filmlists:

these three are working URLs, but I only get stack traces again, when using them. The URL you mentioned was not in use by me any more anyway, I replaced it years ago with another one of the three above, but it's still not working... anything I can do to produce more verbose output for troubleshooting?

Wurzelmann commented 2 years ago

New error though... this is the stack trace when I only try to update my filmlist via meth update:

Downloading movie list… Exception in thread "main" javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
Message: Content is not allowed in prolog.
        at java.xml/com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:652)
        at meth.settings$Settings.$anonfun$listUrl$1(settings.scala:67)
        at fs2.Task$.$anonfun$delay$1(Task.scala:191)
        at fs2.Task$.$anonfun$suspend$2(Task.scala:199)
        at fs2.util.Attempt$.apply(Attempt.scala:12)
        at fs2.Task$.$anonfun$suspend$1(Task.scala:199)
        at fs2.internal.Future.step(Future.scala:53)
        at fs2.internal.Future.listen(Future.scala:30)
        at fs2.internal.Future.runAsync(Future.scala:69)
        at fs2.internal.Future.run(Future.scala:79)
        at fs2.TaskPlatform$JvmSyntax.unsafeRun(TaskPlatform.scala:14)
        at meth.movielist$.listUrl$lzycompute(movielist.scala:17)
        at meth.movielist$.listUrl(movielist.scala:17)
        at meth.movielist$.$anonfun$downloadList$1(movielist.scala:95)
        at fs2.Task$.$anonfun$delay$1(Task.scala:191)
        at fs2.Task$.$anonfun$suspend$2(Task.scala:199)
        at fs2.util.Attempt$.apply(Attempt.scala:12)
        at fs2.Task$.$anonfun$suspend$1(Task.scala:199)
        at fs2.internal.Future.step(Future.scala:54)
        at fs2.internal.Future.listen(Future.scala:30)
        at fs2.internal.Future.runAsync(Future.scala:69)
        at fs2.internal.Future.run(Future.scala:79)
        at fs2.TaskPlatform$JvmSyntax.unsafeRun(TaskPlatform.scala:14)
        at meth.main$.main(main.scala:34)
        at meth.main.main(main.scala)
Wurzelmann commented 2 years ago

Manually downloading a filmlist, extracting and renaming it to filmlist seems to work, downloads are seemingly fine without any stack traces so far, but something about meth's filmlist update mechanism seems to be broken...

eikek commented 2 years ago

Previously there was a xml file provided that contained a list of URLs to the "filmlist". This is not working anymore, so I removed it. Now the url from the config at fallbackListUrl is being used and no check is done anymore.