Open gerritholl opened 7 months ago
Error handling is one of SIFT's biggest faults/limitations. It doesn't surprise me that it doesn't handle this well as it doesn't handle most low-level (or high-level?) errors well beyond putting them in the terminal. I think getting this error all the way to the user would be difficult as it is happening inside the Scene.load
call in Satpy and even Satpy doesn't present that error to the user, right? I mean, does this fall under the Satpy case of not erroring when a product fails to load, but instead providing the user with whatever it could? Perhaps this is a use case for a feature you (and I?) talked about in the past of letting the satpy.config
have an option to control how failed product loading is handled (exception raised or silent).
True, it'd be hard for sift to salvage anything unless it does the .load(...)
calls one-by-one. I haven't tried this from Satpy directly; IT doesn't support us using our Windows notebooks for anything programming-related, saying that's what the Linux workstations/servers are for.
I'm trying to load a number of datasets including
true_color
. When loaded the first time, producing thetrue_color
composite tries to reach zenodo.org to download (I think) spectral response functions. On my Windows notebook, this fails with aTimeoutError
(employer security settings do not allow "unsupported" software to connect to the web). Sift does not handle this gracefully. A user not looking at the console will observe nothing happening at all. Rather than failing silently, Sift should continue loading those datasets it can load, then show an error message explaining why this one composite could not be loaded.A user who does look at the console will see:
This is using sift 2.0.0b0 on a laptop running Windows 10 Enterprise LTSC. The environment apparently prohibits sift from contacting the web; I've previously tried to reach the web from a Python script, and the (not very helpful) reply from our IT support was "Python is not supported on Windows".