Skip to content

Commit

Permalink
Merge branch 'develop' into 4544_CoilCoolingDX_clone_proper
Browse files Browse the repository at this point in the history
  • Loading branch information
jmarrec authored Mar 16, 2023
2 parents cdcfa0a + e432743 commit 78dfcf1
Show file tree
Hide file tree
Showing 2,456 changed files with 71,100 additions and 19,617 deletions.
8 changes: 7 additions & 1 deletion .github/workflows/cppcheck.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ jobs:
cppcheck \
--std=c++17 \
--enable=warning,style,information \
--suppress=toomanyconfigs \
--suppress=noExplicitConstructor \
--suppress=useStlAlgorithm \
--suppress=unmatchedSuppression \
Expand All @@ -33,11 +34,16 @@ jobs:
--suppress=functionConst:src/utilities/filetypes/WorkflowStep.hpp \
--suppress=functionConst:src/utilities/filetypes/WorkflowStepResult.hpp \
--suppress=redundantAssignment:src/utilities/sql/SqlFile.hpp \
--suppress=constParameterCallback:src/utilities/idd/benchmark/IddObjectParse_Benchmark.cpp \
--suppress=constParameterCallback:src/utilities/idd/benchmark/LoadIdd_Benchmark.cpp \
--suppress=constParameterCallback:src/utilities/idf/benchmark/IdfObjectParse_Benchmark.cpp \
--suppress=constParameterCallback:src/utilities/idf/benchmark/LoadIdfFile_Benchmark.cpp \
--suppress=constStatement:src/utilities/geometry/Intersection.cpp \
--inline-suppr \
--inconclusive \
--template='[{file}:{line}]:({severity}),[{id}],{message}' \
-j $(nproc) \
--force \
--max-configs=1 \
-i src/cli/test \
-i src/airflow/contam \
-i src/polypartition \
Expand Down
35 changes: 22 additions & 13 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ if(CCACHE_PROGRAM)
endif()

# Project macro can only take digits in the version, it splits these out to specific variables
project(OpenStudio VERSION 3.5.2)
project(OpenStudio VERSION 3.6.0)

include(CMake/compiler_flags.cmake)

Expand Down Expand Up @@ -189,19 +189,18 @@ if(hasParent)
endif()

# EnergyPlus Idd version
set(ENERGYPLUS_VERSION_MAJOR 22)
set(ENERGYPLUS_VERSION_MINOR 2)
set(ENERGYPLUS_VERSION_MAJOR 23)
set(ENERGYPLUS_VERSION_MINOR 1)
set(ENERGYPLUS_VERSION_PATCH 0)
set(ENERGYPLUS_VERSION "${ENERGYPLUS_VERSION_MAJOR}.${ENERGYPLUS_VERSION_MINOR}.${ENERGYPLUS_VERSION_PATCH}")
# Build SHA is not required to have a value, but if it does OpenStudio will require this build.
set(ENERGYPLUS_BUILD_SHA "aa78da9668")
set(ENERGYPLUS_BUILD_SHA "ff86a13c18")

# ENERGYPLUS_RELEASE_NAME is used to locate the E+ download
# from the github releases
set(ENERGYPLUS_RELEASE_NAME "v22.2.0-WithIHGFix")
set(ENERGYPLUS_RELEASE_NAME "v23.1.0-IOFreeze")

# TODO: Temporary change to a fork until a patched release is issued on NREL's
set(ENERGYPLUS_REPO "jmarrec")
set(ENERGYPLUS_REPO "NREL")

# Radiance
set(RADIANCE_VERSION "5.0.a.12")
Expand Down Expand Up @@ -286,6 +285,14 @@ mark_as_advanced(BUILD_PYTHON_BINDINGS)
option(BUILD_TESTING "Build testing targets" OFF)

option(BUILD_BENCHMARK "Build benchmarking targets" OFF)
if(BUILD_BENCHMARK)
configure_file(${PROJECT_SOURCE_DIR}/developer/python/run_benchmark.py ${PROJECT_BINARY_DIR}/run_benchmark.py COPYONLY)
add_custom_target(run_benchmarks
COMMAND python run_benchmark.py --quiet --all
DEPENDS "${PROJECT_BINARY_DIR}/run_benchmark.py"
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
endif()

option(BUILD_RUBY_BINDINGS "Build Ruby bindings" ON)
mark_as_advanced(BUILD_RUBY_BINDINGS)
Expand Down Expand Up @@ -573,6 +580,8 @@ if(MSVC)
add_definitions(-D_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS)
add_definitions(-D_SILENCE_FPOS_SEEKPOS_DEPRECATION_WARNING)

add_compile_options(/utf-8)

endif()

##############################################################################
Expand All @@ -596,10 +605,10 @@ endif()
if(UNIX)
if(APPLE)
if (ARCH MATCHES "arm64")
set(ENERGYPLUS_EXPECTED_HASH 35ba21891e7059987391f1ab59958025)
set(ENERGYPLUS_EXPECTED_HASH 1494609bef92599b4dd266ff859d8304)
set(ENERGYPLUS_PLATFORM "Darwin-macOS12.1-arm64")
else()
set(ENERGYPLUS_EXPECTED_HASH 481fafde9496735d809e810bd95b720f)
set(ENERGYPLUS_EXPECTED_HASH 4dafda1a64ac9160f38c7750daceec4b)
set(ENERGYPLUS_PLATFORM "Darwin-macOS10.15-x86_64")
endif()
elseif(LSB_RELEASE_ID_SHORT MATCHES "CentOS")
Expand All @@ -608,9 +617,9 @@ if(UNIX)
set(ENERGYPLUS_PLATFORM "Centos7-x86_64")
else()
if(LSB_RELEASE_VERSION_SHORT MATCHES "20.04")
set(ENERGYPLUS_EXPECTED_HASH fd2b9e55a15227f872601e9e57ffe819)
set(ENERGYPLUS_EXPECTED_HASH fe5a4b8dd60fec342b7ed1f9216b7061)
else() # 18.04
set(ENERGYPLUS_EXPECTED_HASH 05a97ef513fa3f2ac7678bd9eef026db)
set(ENERGYPLUS_EXPECTED_HASH fec576b594e24c11f3f83c6c3bb1e897)
endif()
set(ENERGYPLUS_PLATFORM "Linux${ENERGYPLUS_SYSTEM_VERSION}-x86_64")
endif()
Expand Down Expand Up @@ -644,11 +653,11 @@ elseif(WIN32)
if(CMAKE_SIZEOF_VOID_P EQUAL 8) # 64 bit
set(ENERGYPLUS_PATH "EnergyPlus-${ENERGYPLUS_VERSION}-${ENERGYPLUS_BUILD_SHA}-Windows-x86_64")
set(ENERGYPLUS_ARCH 64)
set(ENERGYPLUS_EXPECTED_HASH 8611314c5056abedca59144627e79078)
set(ENERGYPLUS_EXPECTED_HASH 0a6a1100cf7bce4a8dd93a1ec4c8a2bb)
else()
set(ENERGYPLUS_PATH "EnergyPlus-${ENERGYPLUS_VERSION}-${ENERGYPLUS_BUILD_SHA}-Windows-i386")
set(ENERGYPLUS_ARCH 32)
set(ENERGYPLUS_EXPECTED_HASH 76afec50c80fc4b53f2f4da572573688)
set(ENERGYPLUS_EXPECTED_HASH 0baa693ae4bca138933331632ebaf5e5)
endif()
if(EXISTS "${PROJECT_BINARY_DIR}/${ENERGYPLUS_PATH}.zip")
file(MD5 "${PROJECT_BINARY_DIR}/${ENERGYPLUS_PATH}.zip" ENERGYPLUS_HASH)
Expand Down
4 changes: 2 additions & 2 deletions ConanInstall.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -172,14 +172,14 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN)
"jsoncpp/1.9.5#536d080aa154e5853332339bf576747c"
"minizip/1.2.12#0b5296887a2558500d0323c6c94c8d02" # This depends on zlib, and basically patches it
"zlib/1.2.12#3b9e037ae1c615d045a06c67d88491ae" # Also needed, so we can find zlib.h and co (+ pinning exactly is good)
"fmt/8.1.1#b3e969f8561a85087bd0365c09bbf4fb"
"fmt/9.1.0#811e918ca4b4e0b9ddd6d5a2883efa82"
"sqlite3/3.38.5#010911927ce1889b5cf824f45e7cd3d2"
"cpprestsdk/2.10.18#df2f6ac88e47cadd9c9e8e0971e00d89"
"websocketpp/0.8.2#3fd704c4c5388d9c08b11af86f79f616"
"geographiclib/1.52#76536a9315a003ef3511919310b2fe37"
"swig/4.0.2#9fcccb1e39eed9acd53a4363d8129be5"
"tinygltf/2.5.0#c8b2aca9505e86312bb42aa0e1c639ec"
"cli11/2.2.0#33cd38722fa134b15ae308dfb4e6c942"
"cli11/2.3.2#8ccdf14fb1ad53532d498c16ae580b4b"
${CONAN_GTEST}
${CONAN_BENCHMARK}
# Override to avoid dependency mismatches
Expand Down
4 changes: 2 additions & 2 deletions ProjectMacros.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ macro(MAKE_SWIG_TARGET NAME SIMPLENAME KEY_I_FILE I_FILES PARENT_TARGET PARENT_S
# Suppress 'register' storage class specified warnings (coming from Ruby)
set_target_properties(${swig_target} PROPERTIES COMPILE_FLAGS "-Wno-dynamic-class-memaccess -Wno-deprecated-declarations -Wno-sign-compare -Wno-register -Wno-sometimes-uninitialized")
else()
set_target_properties(${swig_target} PROPERTIES COMPILE_FLAGS "-Wno-deprecated-declarations -Wno-sign-compare -Wno-register -Wno-conversion-null -Wno-misleading-indentation")
set_target_properties(${swig_target} PROPERTIES COMPILE_FLAGS "-Wno-deprecated-declarations -Wno-sign-compare -Wno-register -Wno-conversion-null -Wno-misleading-indentation -fno-gnu-unique")
endif()
endif()

Expand Down Expand Up @@ -380,7 +380,7 @@ macro(MAKE_SWIG_TARGET NAME SIMPLENAME KEY_I_FILE I_FILES PARENT_TARGET PARENT_S
# Undefined suppress needed to avoid linking to Python::Module
set_target_properties(${swig_target} PROPERTIES LINK_FLAGS "-flat_namespace -undefined suppress")
else()
set_target_properties(${swig_target} PROPERTIES COMPILE_FLAGS "-Wno-deprecated-declarations -Wno-sign-compare -Wno-misleading-indentation")
set_target_properties(${swig_target} PROPERTIES COMPILE_FLAGS "-Wno-deprecated-declarations -Wno-sign-compare -Wno-misleading-indentation -fno-gnu-unique")
endif()
endif()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,14 @@ You can also refer to the [OpenStudio SDK Python Binding Version Compatibility M

* [#4740](https://github.com/NREL/OpenStudio/pull/4740) - Fix issues around `ScheduleFixedInterval`, with A minor API breaking change: `intervalLength`/`setIntervalLength` now return/accept an `int` rather than a `double` to conform to the IDD type `\integer`

* [#4813](https://github.com/NREL/OpenStudio/pull/4813) - Wrap `SolarCollectorPerformance:PhotovoltaicThermal:BIPVT`
* `SolarCollectorFlatPlatePhotovoltaicThermal` has API-breaking changes in the `solarCollectorPerformance` getter due to the addition of this new object: it used to return a `SolarCollectorPerformancePhotovoltaicThermalSimple` (the only performance object at the time), now it's a `ModelObject`.

## Minor changes and bug fixes


* [#4828](https://github.com/NREL/OpenStudio/pull/4828) - Fix Space load-based actuator for spaces are named based on thermal zone name
* As part of this PR, the optional field at the end `Zone Name` is replaced with `Zone or Space` and some API changes are there around it. The only minor breaking one is that `boost::optional<ModelObject> zoneName()` (deprecated) will now return either a Zone or a Space. Before if you called setSpace it would store the space's ThermalZone, now it stores the Space itself. This is unlikely to affect most users.

**Deprecated methods removed**:

Expand Down
Loading

0 comments on commit 78dfcf1

Please sign in to comment.