pvlib.solarposition.spa_python has **kwargs in the signature, but it doesn't mention it in the docstring, and it doesn't do anything with it in the function body.
|
def spa_python(time, latitude, longitude, |
|
altitude=0, pressure=101325, temperature=12, delta_t=67.0, |
|
atmos_refract=None, how='numpy', numthreads=4, **kwargs): |
This is bad because it silently ignores misspelled optional parameters, for example: pvlib.solarposition.spa_python(times, 40, -80, atlitude=100).
We could just deprecate and remove **kwargs like #1053:
|
if kwargs: |
|
warnings.warn( |
|
'Arbitrary Location kwargs are deprecated and will be ' |
|
'removed in v0.9', pvlibDeprecationWarning |
|
) |
Or we could keep **kwargs and pass them through to spa.solar_position(), thereby exposing the sst and esd parameters. Though if we want to expose those, I'd prefer just exposing them directly instead of hiding them in **kwargs.
This could be a good "easy first issue" once we decide what the fix should be.
pvlib.solarposition.spa_pythonhas**kwargsin the signature, but it doesn't mention it in the docstring, and it doesn't do anything with it in the function body.pvlib-python/pvlib/solarposition.py
Lines 276 to 278 in c243183
This is bad because it silently ignores misspelled optional parameters, for example:
pvlib.solarposition.spa_python(times, 40, -80, atlitude=100).We could just deprecate and remove
**kwargslike #1053:pvlib-python/pvlib/location.py
Lines 83 to 87 in a6667a3
Or we could keep
**kwargsand pass them through tospa.solar_position(), thereby exposing thesstandesdparameters. Though if we want to expose those, I'd prefer just exposing them directly instead of hiding them in**kwargs.This could be a good "easy first issue" once we decide what the fix should be.