simplesamlphp / simplesamlphp/simplesamlphp-module-metarefresh
RFE: metadata/metarefresh error handling improvements
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 9
- Forks
- 19
- PR merge metrics
- No merged PRs in 30d
Description
Currently the eduGAIN feed contains an SP with empty <mdui:Logo>. When running Metarefresh, this makes mdui\Logo throw an exception, saying Missing url value for Logo. Now that's okay, although it doesn't tell me anything about which entity it is.
But 1) the exception propagates all the way upwards, cancelling the import of the entire feed – meaning that just about any SP anywhere can accidentally break my whole eduGAIN access. (Somehow even eduGAIN didn't catch this error.) Maybe it would be possible to skip just that one entity – or even load it without any logos, as they're probably not crucial to the operation.
And 2) the exception is eventually swallowed and thrown away in MetaLoader, which instead shows a very generic "XML parser error when parsing https://fedi.litnet.lt/metadata/edugain.xml - attempting to re-use cached metadata". I spent quite some time trying to figure out that one, as the file is perfectly valid XML. I think it would be good to show the actual exception that was caught.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the Metarefresh import path and the MetaLoader error-handling entry point described in the issue. Trace how an invalid mdui:Logo affects one entity and how the caught exception becomes the generic cached-metadata message. Done means one malformed entity does not cancel the feed import and the underlying exception is retained in the reported error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100