Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ get_directory_property(hasParent PARENT_DIRECTORY)

# TODO: Modify the more specific variables as needed to indicate prerelease, etc
# Keep in beta in-between release cycles. Set to empty string (or comment out) for official)
set(PROJECT_VERSION_PRERELEASE "rc5")
set(PROJECT_VERSION_PRERELEASE "")

# OpenStudio version: Only include Major.Minor.Patch, eg "3.0.0", even if you have a prerelease tag
set(OPENSTUDIO_VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}")
Expand Down Expand Up @@ -1248,7 +1248,7 @@ else()
endif()

# Install additional Documents, such as release notes
install(FILES "${PROJECT_SOURCE_DIR}/developer/doc/ReleaseNotes/OpenStudio_Release_Notes_3_7_0_20231117.pdf" DESTINATION .)
install(FILES "${PROJECT_SOURCE_DIR}/developer/doc/ReleaseNotes/OpenStudio_Release_Notes_3_10_0_20250618.pdf" DESTINATION .)
install(FILES "${PROJECT_SOURCE_DIR}/LICENSE.md" DESTINATION .)
install(FILES "${PROJECT_SOURCE_DIR}/copyright.txt" DESTINATION .)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# OpenStudio Version 3.10.0

_Release Notes_ - _TDB_
_Release Notes_ - 2025-06-18

These release notes describe version 3.10.0 of the OpenStudio SDK developed by the National Renewable Energy Laboratory (NREL), Buildings and Thermal Sciences Center, Commercial Buildings Research Group, Tools Development Section, and associated collaborators. The notes are organized into the following sections:

Expand Down Expand Up @@ -38,10 +38,9 @@ OpenStudio SDK 3.10.0 is supported on:

* 64-bit Windows 7 – 11
* macOS: 11.6+ x86_64, 12.1+ arm64
* Ubuntu: 20.04 x86_64, 22.04 x86_64, 22.04 arm64
* Centos7
* Ubuntu: 22.04 x86_64, 24.04 x86_64, 22.04 arm64

OpenStudio SDK 3.10.0 supports [EnergyPlus Release @EP_VERSION@](https://github.com/NREL/EnergyPlus/releases/tag/v@EP_VERSION@), which is bundled with the OpenStudio installer. It is no longer necessary to download and install EnergyPlus separately. Other builds of EnergyPlus are not supported by OpenStudio SDK 3.10.0.
OpenStudio SDK 3.10.0 supports [EnergyPlus Release 25.1.0, Bug Fix Edition](https://github.com/NREL/EnergyPlus/releases/tag/v25.1.0-WithDSOASpaceListFixes), which is bundled with the OpenStudio installer. It is no longer necessary to download and install EnergyPlus separately. Other builds of EnergyPlus are not supported by OpenStudio SDK 3.10.0.

OpenStudio SDK 3.10.0 supports Radiance 5.0.a.12, which is bundled with the OpenStudio installer; users no longer must install Radiance separately, and OpenStudio will use the included Radiance version regardless of any other versions that may be installed on the system. Other builds of Radiance are not supported by OpenStudio SDK 3.10.0.

Expand All @@ -57,7 +56,7 @@ For help with common installation problems please visit [Getting Started](http:/

# OpenStudio SDK: Changelog

The 3.10.0 is a **<minor/major>** release. This update includes several new features, performance improvements, and bug fixes.
The 3.10.0 is a **major** release. This update includes several new features, performance improvements, and bug fixes.

## C++ Workflow code

Expand All @@ -75,38 +74,96 @@ You can also refer to the [OpenStudio SDK Python Binding Version Compatibility M

## New Features, Major Fixes and API-breaking changes

* [#5326](https://github.com/NREL/OpenStudio/pull/5326) - Wrap ZoneHVAC:EvaporativeCoolerUnit
* [#5326](https://github.com/NREL/OpenStudio/pull/5326) - Wrap `ZoneHVAC:EvaporativeCoolerUnit`
* The object was wrapped in the SDK.
* Note: in EnergyPlus 24.2.0, the `Zone Relief Air Node Name` is an optional field. The OpenStudio SDK always fills with the connected zone's Exhaust Air Node, meaning the airflow is always being balanced by EnergyPlus: the object will extract air from the zone to balance the air supplied to the zone by the cooler outlet node.

* [#5369](https://github.com/NREL/OpenStudio/pull/5369) - Wrap Output:Table:Annual and Output:Table:Monthly
* [#5369](https://github.com/NREL/OpenStudio/pull/5369) - Wrap `Output:Table:Annual` and `Output:Table:Monthly`
* Both objects were wrapped in the SDK
* The OutputTableMonthly also includes a convenient factory methods to create the reports that are in the E+ datasets/StandardReports.idf
* See `std::vector<std::string> OutputTableMonthly::validStandardReportNames` to get a list of valid methods
* and the factory method itself: `OutputTableMonthly OutputTableMonthly::fromStandardReports(const Model& model, const std::string& standardReportName)`

* [#5365](https://github.com/NREL/OpenStudio/pull/5365) - E+ 25.1.0: Wrap OutputControl:ResilienceSummaries
* [#5365](https://github.com/NREL/OpenStudio/pull/5365) - E+ 25.1.0: Wrap `OutputControl:ResilienceSummaries`

* [#5312](https://github.com/NREL/OpenStudio/pull/5312) - Wrap PythonPlugin:SearchPaths
* [#5312](https://github.com/NREL/OpenStudio/pull/5312) - Wrap `PythonPlugin:SearchPaths`
* The unique object was wrapped in the SDK.
* Forward translation intentionally happens before PythonPlugin_Instance so that there cannot be two PythonPlugin_SearchPaths objects.

* [#5134](https://github.com/NREL/OpenStudio/pull/5134) - Addresses #5132, EPW design condition methods should return boost::optional doubles or integers
* `EpwDesignCondition` has many API-breaking changes related to its getters. The previous behavior was to misleadingly return a value of 0 for any empty design condition header field. The types for the getters are now either boost::optional<double> or boost::optional<int>.

* [#5350](https://github.com/NREL/OpenStudio/pull/5350) - Wrap `CoilSystem:Cooling:Water`
* The object was wrapped in the SDK.
* This coil system enables "Water Side Economizer Mode" and "Wrap Around Water Coil Heat Recovery Mode".

* [#5426](https://github.com/NREL/OpenStudio/pull/5426) - Re-wrap Thermochromic window model properly to handle extensible fields and translation to/from EnergyPlus
* While the class `ThermochromicGlazing` has been in the model namespace for a long time, it was actually not properly wrapped, unsable, and not forward translated

* [#5384](https://github.com/NREL/OpenStudio/pull/5384) + [#5403](https://github.com/NREL/OpenStudio/pull/5403)- OutdoorAir upgrades
* Do **not** add a `Controller:MechanicalVentilation` if it does not have a `DesignSpecification:OutdoorAir` on it, which would produce an E+ `SevereError`
* Use a `DesignSpecification:OutdoorAir:SpaceList` if appropriate instead of using the first `DesignSpecification:OutdoorAir` found
* In case you have several Spaces with unique DSOAs that are using an absolute value (Outdoor Air Flow Rate) in the same ThermalZone, this previously would lead to an incorrect amount of Outdoor Air

* [#5367](https://github.com/NREL/OpenStudio/pull/5367) - Add a new `ReportingMeasure::modelOutputRequests(model, runner, argument_map)` that runs before E+ FT

* [#5385](https://github.com/NREL/OpenStudio/pull/5385) - add `WorkflowJSON::setRootDir(path&)` and `setRunDir(path&)`

* [#5394](https://github.com/NREL/OpenStudio/pull/5394) - `--bundle` options not working for CLI in docker-openstudio, possibly OS itself

## Minor changes and bug fixes

Refer to the changelog on the release page at [v3.10.0](https://github.com/NREL/OpenStudio/releases/v3.10.0)
* [#5396](https://github.com/NREL/OpenStudio/pull/5396) - Create convenience method to set SpaceInfiltrationDesignFlowRate values from Space

**Full Changelog**: https://github.com/NREL/OpenStudio/compare/v3.9.0...v3.10.0
* [#5372](https://github.com/NREL/OpenStudio/pull/5372) - add FuelTypes to PlantComponentUserDefined

**New Contributors**:
* [#5401](https://github.com/NREL/OpenStudio/pull/5402) - BCL measure update picks up subfolders like `resources/__pycache__` or `tests/.pytest_cache`

### OpenStudio Standards v@STANDARDS_VERSION@
* [#5304](https://github.com/NREL/OpenStudio/pull/5304) - Measure manager fixups and improvements

Update the openstudio-standards gem to version [@STANDARDS_VERSION@](https://github.com/NREL/openstudio-standards/releases/tag/v@STANDARDS_VERSION@)
In addition to some refactoring, this release also included conversion of 90.1 data to formal database.
* [#5378](https://github.com/NREL/OpenStudio/pull/5378) - Old materials OSC (< 0.7.4) cannot be loaded anymore

* [#5373](https://github.com/NREL/OpenStudio/pull/5373) - ThreeJSForwardTranslator adds unnecessary RenderingColor objects for AirLoopHVAC

* [#5382](https://github.com/NREL/OpenStudio/pull/5382) - Add a helper `IdfObject::initializeFields(bool fill_default)`

* [#5334](https://github.com/NREL/OpenStudio/pull/5334) - Register AFN scheduleTypeRegistry.

* [#5345](https://github.com/NREL/OpenStudio/pull/5345) - Design Range Temperature for OS:CoolingTower:SingleSpeed is not being converted into EnergyPlus

* [#5322](https://github.com/NREL/OpenStudio/pull/5322) - AirLoopHVACUnitaryHeatPump(Multispeed) fixes

### OpenStudio Server vXXX
* [#5333](https://github.com/NREL/OpenStudio/pull/5333) - Typo in Schematron extension: .sch, not .sct!

* [#5337](https://github.com/NREL/OpenStudio/pull/5337) - Fixes `UnitarySystemPerformance:Multispeed` number of cooling speeds w/ `Coil:Cooling:DX`

* [#5325](https://github.com/NREL/OpenStudio/pull/5325) - Wrap GroundHeatExchangerVertical "Depth of Top of Borehole" field

* [#5316](https://github.com/NREL/OpenStudio/pull/5316) - OpenStudio CLI unable to require uuid in OpenStudio 3.9 (thereby breaking dependencies like openstudio-extension)

* [#5320](https://github.com/NREL/OpenStudio/pull/5320) - gbXML Reverse Translator - Scan for the gbxml Schema version: skip schema validation with a warning when not 7.03

* [#5305](https://github.com/NREL/OpenStudio/pull/5305) - Remove SpaceAndSpaceGroupNames from Building

* [#5321](https://github.com/NREL/OpenStudio/pull/5321) - Add Tank Element Control Logic field to WaterHeaterHeatPump

* [#5374](https://github.com/NREL/OpenStudio/pull/5374) - DefrostEnergyInputRatioModifierFunctionofTemperatureCurve is orphaned when AirConditionerVariableRefrigerantFlow is removed

* [#5413](https://github.com/NREL/OpenStudio/pull/5413) - Deal with `ASHRAETau2017`

* [#5422](https://github.com/NREL/OpenStudio/pull/5422) - define SWIG_PYTHON_SILENT_MEMLEAK to shush the python destructor warnings


Refer to the changelog on the release page at [v3.10.0](https://github.com/NREL/OpenStudio/releases/v3.10.0)

**Full Changelog**: https://github.com/NREL/OpenStudio/compare/v3.9.0...v3.10.0

**New Contributors**:

### OpenStudio Standards v0.8.2

Update the openstudio-standards gem to version [0.8.2](https://github.com/NREL/openstudio-standards/releases/tag/v0.8.2)
In addition to some refactoring, this release also included conversion of 90.1 data to formal database.

---
# This YAML header controls the pandoc (via TeX) to PDF settings
Expand Down
Binary file not shown.
3 changes: 0 additions & 3 deletions developer/doc/ReleaseNotes/OpenStudio_Release_Notes_3_9_0.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,9 +83,6 @@ You can also refer to the [OpenStudio SDK Python Binding Version Compatibility M
* `getHighHumidityOutdoorAirFlowRatio` (`boost::optional<double>` to `double`)
* `getControlHighIndoorHumidityBasedOnOutdoorHumidityRatio` (`boost::optional<bool>` to `bool`)

* [#5134](https://github.com/NREL/OpenStudio/pull/5134) - Addresses #5132, EPW design condition methods should return boost::optional doubles or integers
* `EpwDesignCondition` has many API-breaking changes related to its getters. The previous behavior was to misleadingly return a value of 0 for any empty design condition header field. The types for the getters are now either boost::optional<double> or boost::optional<int>.

## Minor changes and bug fixes

Refer to the changelog on the release page at [v3.9.0](https://github.com/NREL/OpenStudio/releases/v3.9.0)
Expand Down