new_battery_pool(component_ids=set())uses all batteries again, like before v1.0.0-rc2206.new_pv_pool(),new_ev_charger_pool()andnew_steam_boiler_pool()now also treat an emptycomponent_idsset as "all components". Before, it gave a pool with no components, unless a pool for all components of that type had already been created (both pools then shared one cache entry).- Because of that shared cache entry, the result used to depend on which pool was created first. Now
Noneandset()always give the same pool. - A pool created without component IDs now shares its state with a pool created for the explicit IDs of all the components of its type, like the one the power manager creates to track the pool's power bounds. Before, each of them tracked the power bounds of the same components on its own.
new_battery_pool(),new_pv_pool(),new_ev_charger_pool()andnew_steam_boiler_pool()now always log the warning that a pool was already created when the same pool is created twice at the same priority. The warning now names the pool's components.- Before, the warning was missed when a pool was created without IDs and again for all the IDs of its type, and sometimes for two equal sets of IDs that were built in different ways.
- Creating pools of different types without IDs at the same priority also no longer logs the warning by mistake.