NREL / rdtools

PV Analysis Tools in Python
https://rdtools.readthedocs.io/
MIT License
158 stars 67 forks source link

RdTools is not compatible with pandas 2.0.0rc0 #361

Closed kandersolar closed 1 year ago

kandersolar commented 1 year ago

The first release candidate for pandas 2.0.0 was released yesterday: https://github.com/pandas-dev/pandas/releases/tag/v2.0.0rc0. It's available on PyPI with pip install --pre pandas==2.0.0rc0.

The tests threw a fit when I tried it out locally:

FAILED rdtools/test/degradation_test.py::test_yoy_two_years_error[2014-01-01-2015-12-31-D] - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/degradation_test.py::test_yoy_two_years_error[2015-01-01-2016-12-31-D] - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/degradation_test.py::test_yoy_two_years_error[2015-01-01-2016-12-29-7D] - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/degradation_test.py::test_yoy_two_years_error[2016-06-01-2018-05-31-D] - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/degradation_test.py::test_yoy_two_years_error[2014-03-01-2016-02-29-D] - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/degradation_test.py::test_yoy_two_years_error[2015-01-01-2016-12-31-M] - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/degradation_test.py::test_yoy_two_years_error[2015-01-01-2016-12-31-MS] - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/filtering_test.py::test_logic_clip_filter - ValueError: Cannot convert from timedelta64[ns] to timedelta64[m]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/filtering_test.py::test_xgboost_clip_filter - ValueError: Cannot convert from timedelta64[ns] to timedelta64[m]. Supported resolutions are 's', 'ms', 'us', 'ns'
FAILED rdtools/test/filtering_test.py::test_clip_filter - ValueError: Cannot convert from timedelta64[ns] to timedelta64[m]. Supported resolutions are 's', 'ms', 'us', 'ns'
ERROR rdtools/test/analysis_chains_test.py::test_interpolation - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_sensor_analysis - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_sensor_analysis_energy - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_sensor_analysis_exp_power - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_sensor_analysis_power_dc_rated - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_sensor_analysis_ad_hoc_filter - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_filter_components - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_filter_components_no_filters - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_filter_ad_hoc_warnings[sensor] - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_filter_ad_hoc_warnings[clearsky] - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_cell_temperature_model_invalid - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_no_gamma_pdc - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_clearsky_analysis - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_clearsky_analysis_optional - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_clearsky_analysis_exp_power - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_no_set_clearsky - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_solar_position_method_passthrough - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_plot_degradation - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_plot_cs - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_errors - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_plot_errors[plot_degradation_summary] - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_plot_errors[plot_soiling_monte_carlo] - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_plot_errors[plot_soiling_interval] - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_plot_errors[plot_soiling_rate_histogram] - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/analysis_chains_test.py::test_plot_errors[plot_pv_vs_irradiance] - ValueError: Could not convert to integer offset at any resolution
ERROR rdtools/test/availability_test.py::test_calc_loss_subsystem_relative_sizes - TypeError: DatetimeArray._generate_range() got an unexpected keyword argument 'closed'
ERROR rdtools/test/degradation_test.py::DegradationTestCase::test_confidence_intervals - TypeError: Addition/subtraction of integers and integer-arrays with TimedeltaArray is no longer supported.  Instead of adding/subtracting `n`, use `n * obj.freq`
ERROR rdtools/test/degradation_test.py::DegradationTestCase::test_degradation_classical_decomposition - TypeError: Addition/subtraction of integers and integer-arrays with TimedeltaArray is no longer supported.  Instead of adding/subtracting `n`, use `n * obj.freq`
ERROR rdtools/test/degradation_test.py::DegradationTestCase::test_degradation_with_ols - TypeError: Addition/subtraction of integers and integer-arrays with TimedeltaArray is no longer supported.  Instead of adding/subtracting `n`, use `n * obj.freq`
ERROR rdtools/test/degradation_test.py::DegradationTestCase::test_degradation_year_on_year - TypeError: Addition/subtraction of integers and integer-arrays with TimedeltaArray is no longer supported.  Instead of adding/subtracting `n`, use `n * obj.freq`
ERROR rdtools/test/degradation_test.py::DegradationTestCase::test_usage_of_points - TypeError: Addition/subtraction of integers and integer-arrays with TimedeltaArray is no longer supported.  Instead of adding/subtracting `n`, use `n * obj.freq`
ERROR rdtools/test/plotting_test.py::test_degradation_summary_plots - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
ERROR rdtools/test/plotting_test.py::test_degradation_summary_plots_kwargs - ValueError: Cannot convert from timedelta64[ns] to timedelta64[h]. Supported resolutions are 's', 'ms', 'us', 'ns'
ERROR rdtools/test/plotting_test.py::test_clipping_filter_plots - ValueError: Cannot convert from timedelta64[ns] to timedelta64[m]. Supported resolutions are 's', 'ms', 'us', 'ns'
ERROR rdtools/test/plotting_test.py::test_filter_plots_kwargs - ValueError: Cannot convert from timedelta64[ns] to timedelta64[m]. Supported resolutions are 's', 'ms', 'us', 'ns'

It sounds like they're planning to release 2.0.0 in a couple weeks, so there is some motivation to not put this on the backburner.