Skip to content

Commit 02395b7

Browse files
committed
Merge remote-tracking branch 'upstream/main' into freq_M_to_ME
2 parents 2af1a2b + 0deb93f commit 02395b7

File tree

7 files changed

+110
-114
lines changed

7 files changed

+110
-114
lines changed

docs/sphinx/source/contributing/testing.rst

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ typically more efficient to run and debug the tests in your own local
2020
environment.
2121

2222
To run the tests locally, install the ``test`` dependencies specified in the
23-
`setup.py <https://github.com/pvlib/pvlib-python/blob/main/setup.py>`_
23+
`pyproject.toml <https://github.com/pvlib/pvlib-python/blob/main/pyproject.toml>`_
2424
file. See :ref:`installation` instructions for more information.
2525

2626
pvlib's unit tests can easily be run by executing ``pytest`` on the
27-
pvlib directory::
27+
tests directory::
2828

29-
pytest pvlib
29+
pytest tests
3030

3131
or, for a single module::
3232

@@ -39,7 +39,7 @@ or, for a single test::
3939
We suggest using pytest's ``--pdb`` flag to debug test failures rather
4040
than using ``print`` or ``logging`` calls. For example::
4141

42-
pytest pvlib --pdb
42+
pytest tests --pdb
4343

4444
will drop you into the
4545
`pdb debugger <https://docs.python.org/3/library/pdb.html>`_ at the
@@ -50,7 +50,7 @@ to the test suite (with rare exceptions).
5050
To include all network-dependent tests, include the ``--remote-data`` flag to
5151
your ``pytest`` call::
5252

53-
pytest pvlib --remote-data
53+
pytest tests --remote-data
5454

5555
And consider adding ``@pytest.mark.remote_data`` to any network dependent test
5656
you submit for a PR.

docs/sphinx/source/reference/pv_modeling/system_models.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Sandia array performance model (SAPM)
1212

1313
pvsystem.sapm
1414
pvsystem.sapm_effective_irradiance
15-
pvsystem.sapm_spectral_loss
15+
spectrum.spectral_factor_sapm
1616
inverter.sandia
1717
temperature.sapm_cell
1818

docs/sphinx/source/whatsnew.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ What's New
66

77
These are new features and improvements of note in each release.
88

9-
.. include:: whatsnew/v0.11.3.rst
9+
.. include:: whatsnew/v0.12.0.rst
1010
.. include:: whatsnew/v0.11.2.rst
1111
.. include:: whatsnew/v0.11.1.rst
1212
.. include:: whatsnew/v0.11.0.rst

docs/sphinx/source/whatsnew/v0.11.3.rst

Lines changed: 0 additions & 103 deletions
This file was deleted.
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
.. _whatsnew_01200:
2+
3+
4+
v0.12.0 (March 19, 2025)
5+
------------------------
6+
7+
Breaking Changes
8+
~~~~~~~~~~~~~~~~
9+
* The :py:attr:`pvlib.location.Location.pytz` attribute is now read only. The
10+
``pytz`` attribute is now set internally to be consistent with the
11+
:py:attr:`pvlib.location.Location.tz` attribute. (:issue:`2340`, :pull:`2341`)
12+
* Users must now provide :py:attr:`ModelChain.spectral_model`, or the ``'no_loss'`` spectral
13+
model is assumed. :py:class:`~pvlib.modelchain.ModelChain` no longer attempts to infer
14+
the spectral model from :py:class:`~pvlib.pvsystem.PVSystem` attributes. (:issue:`2017`, :pull:`2253`)
15+
* Remove deprecated :py:func:`!pvlib.pvsystem.sapm_spectral_loss`; use
16+
:py:func:`~pvlib.spectrum.spectral_factor_sapm` instead. (:issue:`2243`, :pull:`2244`)
17+
* :py:func:`~pvlib.iotools.read_tmy3` now defaults to ``map_variables=True``.
18+
Additionally, the deprecated ``recolumn`` parameter is now removed. (:issue:`2324`, :pull:`2408`)
19+
* Remove :py:func:`!pvlib.atmosphere.first_solar_spectral_correction`, deprecated in v0.10.0.
20+
Use :py:func:`~pvlib.spectrum.spectral_factor_firstsolar` instead. (:issue:`2130`, :pull:`2131`)
21+
* Remove deprecated :py:func:`!pvlib.spectrum.get_am15g` function; use
22+
:py:func:`~pvlib.spectrum.get_reference_spectra` instead. (:pull:`2409`)
23+
* Change default method of :py:func:`~pvlib.location.Location.get_sun_rise_set_transit`
24+
to ``'spa'`` instead of ``'pyephem'``. (:pull:`2410`)
25+
26+
Bug fixes
27+
~~~~~~~~~
28+
* Add a check to :py:func:`~pvlib.snow.fully_covered_nrel` and
29+
:py:func:`~pvlib.snow.coverage_nrel`. The check uses snow depth on the ground
30+
to improve modeling for systems with shallow tilt angles. The check
31+
adds a new, optional parameter ``snow_depth``. (:issue:`1171`, :pull:`2292`)
32+
* Fix a bug in :py:func:`pvlib.bifacial.infinite_sheds.get_irradiance_poa` which may have yielded non-zero
33+
ground irradiance when the sun was below the horizon. (:issue:`2245`, :pull:`2359`)
34+
* Fix a bug where :py:func:`pvlib.transformer.simple_efficiency` could only be imported
35+
using the ``from pvlib.transformer`` syntax. (:pull:`2388`)
36+
* :py:class:`~pvlib.modelchain.ModelChain` now requires only a minimal set of
37+
parameters to run the SAPM electrical model. (:issue:`2369`, :pull:`2393`)
38+
* Correct keys for First Solar modules in :py:func:`~pvlib.spectrum.spectral_factor_pvspec`. (:issue:`2398`, :pull:`2400`)
39+
* Ensure proper tz and pytz types in :py:class:`~pvlib.location.Location`. To ensure that
40+
the time zone in :py:class:`~pvlib.location.Location` remains internally consistent
41+
if/when the time zone is updated, the ``tz`` attribute is now the single source
42+
of time-zone truth, is the single time-zone setter interface, and its getter
43+
returns an IANA string. (:issue:`2340`, :pull:`2341`)
44+
* :py:func:`~pvlib.iotools.get_pvgis_tmy` with ``outputformat='csv'`` now
45+
works with the updated data format returned by PVGIS. (:issue:`2344`, :pull:`2395`)
46+
47+
Enhancements
48+
~~~~~~~~~~~~
49+
* :py:func:`~pvlib.irradiance.gti_dirint` now raises an informative message
50+
when input data don't include values with AOI<90. (:issue:`1342`, :pull:`2347`)
51+
* Reduce space requirements by excluding tests and test files from wheel.
52+
Zipped wheel is now 66% of the previous size, and installed size is 50% of
53+
the previous size. (:issue:`2271`, :pull:`2277`)
54+
55+
Documentation
56+
~~~~~~~~~~~~~
57+
* Fix Procedural and Object Oriented simulation examples having slightly different
58+
results in :ref:`introtutorial`. (:issue:`2366`, :pull:`2367`)
59+
* Restructure the user guide with subsections. (:issue:`2302`, :pull:`2310`)
60+
* Add references for :py:func:`pvlib.snow.loss_townsend`. (:issue:`2383`, :pull:`2384`)
61+
* Add :term:`ghi_clear` to the :ref:`nomenclature` page. (:issue:`2272`, :pull:`2397`)
62+
* Add output variable naming clarifaction to :py:func:`pvlib.pvsystem.calcparams_desoto`
63+
and :py:func:`pvlib.pvsystem.calcparams_pvsyst`. (:issue:`716`, :pull:`2405`)
64+
65+
Testing
66+
~~~~~~~
67+
* Move tests folder to ``/tests`` and data exclusively used for testing to ``/tests/data``.
68+
(:issue:`2271`, :pull:`2277`)
69+
* Add Python 3.13 to test suite. (:issue:`2201`, :pull:`2258`)
70+
* Add tests for all input types for the :py:attr:`pvlib.location.Location.tz` attribute.
71+
(:issue:`2340`, :pull:`2341`)
72+
* Add tests for time-conversion functions in :py:mod:`pvlib.tools`. (:issue:`2340`, :pull:`2341`)
73+
74+
Maintenance
75+
~~~~~~~~~~~
76+
* Fix ReadTheDocs builds by upgrading ``readthedocs.yml`` configuration
77+
(:issue:`2357`, :pull:`2358`)
78+
* asv 0.4.2 upgraded to asv 0.6.4 to fix CI failure due to pinned older conda.
79+
(:pull:`2352`)
80+
81+
Contributors
82+
~~~~~~~~~~~~
83+
* Rajiv Daxini (:ghuser:`RDaxini`)
84+
* Cliff Hansen (:ghuser:`cwhanse`)
85+
* Jason Lun Leung (:ghuser:`jason-rpkt`)
86+
* Manoj K S (:ghuser:`manojks1999`)
87+
* Kurt Rhee (:ghuser:`kurt-rhee`)
88+
* Ayush jariyal (:ghuser:`ayushjariyal`)
89+
* Kevin Anderson (:ghuser:`kandersolar`)
90+
* Echedey Luis (:ghuser:`echedey-ls`)
91+
* Mark Campanelli (:ghuser:`markcampanelli`)
92+
* Max Jackson (:ghuser:`MaxJackson`)
93+
* Anton Driesse (:ghuser:`adriesse`)
94+
* Adam R. Jensen (:ghuser:`AdamRJensen`)
95+
* Ioannis Sifnaios (:ghuser:`IoannisSifnaios`)
96+
* Will Holmgren (:ghuser:`wholmgren`)
97+
* Sophie Pelland (:ghuser:`solphie-pelland`)
98+
* Will Hobbs (:ghuser:`williamhobbs`)
99+
* Karel De Brabandere (:ghuser:`kdebrab`)
100+
* Kenneth J. Sauer (:ghuser:`kjsauer`)

pvlib/location.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -368,15 +368,15 @@ def get_airmass(self, times=None, solar_position=None,
368368

369369
return airmass
370370

371-
def get_sun_rise_set_transit(self, times, method='pyephem', **kwargs):
371+
def get_sun_rise_set_transit(self, times, method='spa', **kwargs):
372372
"""
373373
Calculate sunrise, sunset and transit times.
374374
375375
Parameters
376376
----------
377377
times : DatetimeIndex
378378
Must be localized to the Location
379-
method : str, default 'pyephem'
379+
method : str, default 'spa'
380380
'pyephem', 'spa', or 'geometric'
381381
382382
kwargs :

tests/spectrum/test_irradiance.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,9 @@
44
import numpy as np
55
from pvlib import spectrum
66

7-
from tests.conftest import assert_series_equal, fail_on_pvlib_version
7+
from tests.conftest import assert_series_equal
88

99

10-
@fail_on_pvlib_version('0.12')
1110
def test_get_reference_spectra_am15g():
1211
# test that the reference spectrum is read and interpolated correctly
1312
e = spectrum.get_reference_spectra()['global']

0 commit comments

Comments
 (0)