From 51ec4dc2067f9810fd0aff9bcc0b0bd5ecd5c2a5 Mon Sep 17 00:00:00 2001 From: David Blum Date: Wed, 3 Apr 2024 08:47:31 -0700 Subject: [PATCH 01/14] Make updates --- releasenotes.md | 5 +++++ testing/references/bestest_air/submit.json | 2 +- testing/references/bestest_hydronic/submit.json | 2 +- testing/references/bestest_hydronic_heat_pump/submit.json | 2 +- testing/references/multizone_office_simple_air/submit.json | 2 +- .../references/multizone_residential_hydronic/submit.json | 2 +- .../references/singlezone_commercial_hydronic/submit.json | 2 +- testing/references/testcase1/submit.json | 2 +- testing/references/testcase2/submit.json | 2 +- testing/references/testcase3/submit.json | 2 +- testing/references/twozone_apartment_hydronic/submit.json | 2 +- testing/utilities.py | 2 +- version.txt | 2 +- 13 files changed, 17 insertions(+), 12 deletions(-) diff --git a/releasenotes.md b/releasenotes.md index ee4a31a5c..c062f5b8e 100644 --- a/releasenotes.md +++ b/releasenotes.md @@ -1,5 +1,10 @@ # Release Notes +## BOPTEST v0.6.0-dev + +Released on xx/xx/xxxx. + + ## BOPTEST v0.6.0 Released on 04/03/2024. diff --git a/testing/references/bestest_air/submit.json b/testing/references/bestest_air/submit.json index 99773bb50..28118bbe1 100644 --- a/testing/references/bestest_air/submit.json +++ b/testing/references/bestest_air/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "bestest_air"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.02730719968271573, "emis_tot": 0.785590772991245, "ener_tot": 3.7227262062358055, "idis_tot": 1221.6529527806554, "pdih_tot": null, "pele_tot": 0.010216143907980911, "pgas_tot": 0.12133848299596474, "tdis_tot": 5.687288484421467, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "bestest_air"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.02730719968271573, "emis_tot": 0.785590772991245, "ener_tot": 3.7227262062358055, "idis_tot": 1221.6529527806554, "pdih_tot": null, "pele_tot": 0.010216143907980911, "pgas_tot": 0.12133848299596474, "tdis_tot": 5.687288484421467, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/bestest_hydronic/submit.json b/testing/references/bestest_hydronic/submit.json index 045e8684f..d8bc463af 100644 --- a/testing/references/bestest_hydronic/submit.json +++ b/testing/references/bestest_hydronic/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "bestest_hydronic"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.4660775943925745, "emis_tot": 1.6291465071977262, "ener_tot": 9.00349952561408, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.00025517153990852024, "pgas_tot": 0.11798036181564837, "tdis_tot": 18.21783776691252, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "bestest_hydronic"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.4660775943925745, "emis_tot": 1.6291465071977262, "ener_tot": 9.00349952561408, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.00025517153990852024, "pgas_tot": 0.11798036181564837, "tdis_tot": 18.21783776691252, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/bestest_hydronic_heat_pump/submit.json b/testing/references/bestest_hydronic_heat_pump/submit.json index b247d90f8..505747e58 100644 --- a/testing/references/bestest_hydronic_heat_pump/submit.json +++ b/testing/references/bestest_hydronic_heat_pump/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "bestest_hydronic_heat_pump"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.8827810790417875, "emis_tot": 0.5807880184554309, "ener_tot": 3.4777725656013834, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.01891307030662192, "pgas_tot": null, "tdis_tot": 8.381692942513078, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "bestest_hydronic_heat_pump"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.8827810790417875, "emis_tot": 0.5807880184554309, "ener_tot": 3.4777725656013834, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.01891307030662192, "pgas_tot": null, "tdis_tot": 8.381692942513078, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/multizone_office_simple_air/submit.json b/testing/references/multizone_office_simple_air/submit.json index 11b29716b..10b78a7e1 100644 --- a/testing/references/multizone_office_simple_air/submit.json +++ b/testing/references/multizone_office_simple_air/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "multizone_office_simple_air"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.1653760825456517, "emis_tot": 0.6104864888960548, "ener_tot": 1.7902829586394566, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.03334236916573142, "pgas_tot": null, "tdis_tot": 11.835570350490515, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "multizone_office_simple_air"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.1653760825456517, "emis_tot": 0.6104864888960548, "ener_tot": 1.7902829586394566, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.03334236916573142, "pgas_tot": null, "tdis_tot": 11.835570350490515, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/multizone_residential_hydronic/submit.json b/testing/references/multizone_residential_hydronic/submit.json index f9a151444..fd37a4837 100644 --- a/testing/references/multizone_residential_hydronic/submit.json +++ b/testing/references/multizone_residential_hydronic/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "multizone_residential_hydronic"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.7911663939870216, "emis_tot": 1.4254044254077105, "ener_tot": 8.140200481262813, "idis_tot": 9114.558476792468, "pdih_tot": null, "pele_tot": 0.0017390231869758264, "pgas_tot": 0.09592720495532532, "tdis_tot": 22.00196096128404, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "multizone_residential_hydronic"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.7911663939870216, "emis_tot": 1.4254044254077105, "ener_tot": 8.140200481262813, "idis_tot": 9114.558476792468, "pdih_tot": null, "pele_tot": 0.0017390231869758264, "pgas_tot": 0.09592720495532532, "tdis_tot": 22.00196096128404, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/singlezone_commercial_hydronic/submit.json b/testing/references/singlezone_commercial_hydronic/submit.json index cfc05ae81..56c022b63 100644 --- a/testing/references/singlezone_commercial_hydronic/submit.json +++ b/testing/references/singlezone_commercial_hydronic/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "singlezone_commercial_hydronic"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.2631876743024744, "emis_tot": 0.3835816361039315, "ener_tot": 3.216796741203613, "idis_tot": 5.423390226236728, "pdih_tot": 0.08966856983946767, "pele_tot": 0.004907797325142573, "pgas_tot": null, "tdis_tot": 7.995222085010505, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "singlezone_commercial_hydronic"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.2631876743024744, "emis_tot": 0.3835816361039315, "ener_tot": 3.216796741203613, "idis_tot": 5.423390226236728, "pdih_tot": 0.08966856983946767, "pele_tot": 0.004907797325142573, "pgas_tot": null, "tdis_tot": 7.995222085010505, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/testcase1/submit.json b/testing/references/testcase1/submit.json index 46220f9f6..d69c6db02 100644 --- a/testing/references/testcase1/submit.json +++ b/testing/references/testcase1/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "testcase1"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.8992178091703856, "emis_tot": 2.569193740486816, "ener_tot": 12.845968702434082, "idis_tot": 7118.611500670603, "pdih_tot": null, "pele_tot": null, "pgas_tot": 0.11536491775526585, "tdis_tot": 503.9889403913656, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "test_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "testcase1"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.8992178091703856, "emis_tot": 2.569193740486816, "ener_tot": 12.845968702434082, "idis_tot": 7118.611500670603, "pdih_tot": null, "pele_tot": null, "pgas_tot": 0.11536491775526585, "tdis_tot": 503.9889403913656, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "test_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/testcase2/submit.json b/testing/references/testcase2/submit.json index 69167fcb3..75f46154f 100644 --- a/testing/references/testcase2/submit.json +++ b/testing/references/testcase2/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "testcase2"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 1.5461528250629257, "emis_tot": 5.779869004038503, "ener_tot": 11.559738008077005, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.08727961999507106, "pgas_tot": null, "tdis_tot": 0.5880089705328525, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "test_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "testcase2"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 1.5461528250629257, "emis_tot": 5.779869004038503, "ener_tot": 11.559738008077005, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.08727961999507106, "pgas_tot": null, "tdis_tot": 0.5880089705328525, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "test_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/testcase3/submit.json b/testing/references/testcase3/submit.json index c3abb6290..81b3ebed4 100644 --- a/testing/references/testcase3/submit.json +++ b/testing/references/testcase3/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "testcase3"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.9674593335412667, "emis_tot": 2.7641695244036195, "ener_tot": 13.820847622018096, "idis_tot": 3606.22674562425, "pdih_tot": null, "pele_tot": null, "pgas_tot": 0.12017492256526957, "tdis_tot": 443.7163025810678, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "test_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "testcase3"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.9674593335412667, "emis_tot": 2.7641695244036195, "ener_tot": 13.820847622018096, "idis_tot": 3606.22674562425, "pdih_tot": null, "pele_tot": null, "pgas_tot": 0.12017492256526957, "tdis_tot": 443.7163025810678, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "test_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/references/twozone_apartment_hydronic/submit.json b/testing/references/twozone_apartment_hydronic/submit.json index 0ccf9bb7f..a1d9b78be 100644 --- a/testing/references/twozone_apartment_hydronic/submit.json +++ b/testing/references/twozone_apartment_hydronic/submit.json @@ -1 +1 @@ -{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0\n", "buildingType": {"uid": "twozone_apartment_hydronic"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.20051259900734056, "emis_tot": 0.32921968567745863, "ener_tot": 1.055191300248265, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.03982223355202276, "pgas_tot": null, "tdis_tot": 37.36270794223908, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} +{"dash_url": "https://dashboard.boptest.net//api/results", "payload": {"results": [{"account": {"apiKey": "valid_api_key"}, "boptestVersion": "0.6.0-dev\n", "buildingType": {"uid": "twozone_apartment_hydronic"}, "controlStep": "86400.0", "dateRun": "2020-05-17 00:00:00", "forecastParameters": {}, "isShared": true, "kpis": {"cost_tot": 0.20051259900734056, "emis_tot": 0.32921968567745863, "ener_tot": 1.055191300248265, "idis_tot": 0.0, "pdih_tot": null, "pele_tot": 0.03982223355202276, "pgas_tot": null, "tdis_tot": 37.36270794223908, "time_rat": 0}, "scenario": {"electricityPrice": "dynamic", "timePeriod": "peak_heat_day", "weatherForecastUncertainty": "deterministic"}, "tags": ["baseline", "unit_test"], "uid": "1"}]}} diff --git a/testing/utilities.py b/testing/utilities.py index 375c3055d..639cfc6c9 100644 --- a/testing/utilities.py +++ b/testing/utilities.py @@ -438,7 +438,7 @@ def test_get_version(self): version = requests.get('{0}/version'.format(self.url)).json()['payload'] # Create a regex object as three decimal digits seperated by period r_num = re.compile('\d.\d.\d') - r_dev = re.compile('0.5.0-dev\n') + r_dev = re.compile('0.6.0-dev\n') # Test that the returned version matches the expected string format if r_num.match(version['version']) or r_dev.match(version['version']): self.assertTrue(True) diff --git a/version.txt b/version.txt index a918a2aa1..fb0b75423 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -0.6.0 +0.6.0-dev From e48558ce558ef417fd65c77a16435ee2113386cb Mon Sep 17 00:00:00 2001 From: David Blum Date: Tue, 9 Apr 2024 15:40:22 -0400 Subject: [PATCH 02/14] Update license.md --- license.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/license.md b/license.md index f34c7dd68..ef9e1aad6 100644 --- a/license.md +++ b/license.md @@ -1,7 +1,7 @@ License ======= -BOPTEST. Copyright (c) 2018-2023 +BOPTEST. Copyright (c) 2018-2024 International Building Performance Simulation Association (IBPSA) and contributors. All rights reserved. From cf37635c84a00509bea2cd0ddb52c60d7c62b513 Mon Sep 17 00:00:00 2001 From: David Blum Date: Wed, 8 May 2024 13:32:52 -0700 Subject: [PATCH 03/14] Remove python2 testing from makefile and travis yml --- .travis.yml | 5 +---- testing/makefile | 19 ------------------- 2 files changed, 1 insertion(+), 23 deletions(-) diff --git a/.travis.yml b/.travis.yml index 02f31fd9a..6cdb3ed5c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -89,7 +89,4 @@ jobs: script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s test_typical_heat_day,test_summer" - python: 3.9 install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 - script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s API" - - python: 2.7 - install: pip install --upgrade pip && pip install pandas==0.24.2 numpy==1.16.6 matplotlib==2.1.1 requests==2.18.4 - script: cd testing && make test_python2 + script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s API" \ No newline at end of file diff --git a/testing/makefile b/testing/makefile index f9a9aa8bb..28cfadb86 100644 --- a/testing/makefile +++ b/testing/makefile @@ -275,25 +275,6 @@ test_readme_commands: curl http://127.0.0.1:5000/advance -d '{"oveTSetRooHea_u":293.15,"oveTSetRooHea_activate":1, "oveTSetRooCoo_activate":1,"oveTSetRooCoo_u":298.15}' -H "Content-Type: application/json" cd .. && TESTCASE=testcase2 docker-compose down -test_python2: -# Test example controllers written in python run with python 2 -# Test testcase1 - cd .. && TESTCASE=testcase1 docker-compose up -d - python sleep10.py - cd ../examples/python && python testcase1.py - cd ../examples/python && python testcase1_scenario.py - cd .. && TESTCASE=testcase1 docker-compose down -# Test testcase2 - cd .. && TESTCASE=testcase2 docker-compose up -d - python sleep10.py - cd ../examples/python && python testcase2.py - cd .. && TESTCASE=testcase2 docker-compose down -# Test testcase3 - cd .. && TESTCASE=testcase3 docker-compose up -d - python sleep10.py - cd ../examples/python && python testcase3.py - cd .. && TESTCASE=testcase32 docker-compose down - ############################################################################### # Run all tests From 169c3492e52b681f51f4ce54b4982f39cb1a3c83 Mon Sep 17 00:00:00 2001 From: David Blum Date: Wed, 8 May 2024 13:35:02 -0700 Subject: [PATCH 04/14] Update release notes --- releasenotes.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/releasenotes.md b/releasenotes.md index c062f5b8e..39620c16e 100644 --- a/releasenotes.md +++ b/releasenotes.md @@ -4,6 +4,10 @@ Released on xx/xx/xxxx. +**The following changes are backwards-compatible and do not significantly change benchmark results:** + +- Remove support and unit testing of example python controllers using Python 2. This is for [#634](https://github.com/ibpsa/project1-boptest/issues/634). + ## BOPTEST v0.6.0 From 4fbd323f513d2c715154a24e443ae2aa11473f51 Mon Sep 17 00:00:00 2001 From: David Blum Date: Fri, 10 May 2024 09:02:06 -0700 Subject: [PATCH 05/14] Update conda and pyfmi versions --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index b1b73b97b..4fdb46fd6 100755 --- a/Dockerfile +++ b/Dockerfile @@ -19,13 +19,13 @@ ENV HOME /home/user # Download and install miniconda and pyfmi RUN cd $HOME && \ - wget https://repo.anaconda.com/miniconda/Miniconda3-py310_23.1.0-1-Linux-x86_64.sh -O $HOME/miniconda.sh && \ + wget https://repo.anaconda.com/miniconda/Miniconda3-py310_24.3.0-0-Linux-x86_64.sh -O $HOME/miniconda.sh && \ /bin/bash $HOME/miniconda.sh -b -p $HOME/miniconda && \ . miniconda/bin/activate && \ conda update -n base -c defaults conda && \ conda create --name pyfmi3 python=3.10 -y && \ conda activate pyfmi3 && \ - conda install -c conda-forge pyfmi=2.11 -y && \ + conda install -c conda-forge pyfmi=2.12 -y && \ pip install flask-restful==0.3.9 werkzeug==2.2.3 && \ conda install pandas==1.5.3 flask_cors==3.0.10 matplotlib==3.7.1 requests==2.28.1 From b879492bf3d493703732cf553a4d9bcb93ce9645 Mon Sep 17 00:00:00 2001 From: David Blum Date: Fri, 10 May 2024 16:38:20 -0700 Subject: [PATCH 06/14] Update release notes --- releasenotes.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/releasenotes.md b/releasenotes.md index c062f5b8e..d310b1621 100644 --- a/releasenotes.md +++ b/releasenotes.md @@ -4,6 +4,10 @@ Released on xx/xx/xxxx. +**The following changes are backwards-compatible and do not significantly change benchmark results:** + +- Update pyfmi version from 2.11 to 2.12 and miniconda version from py310_23.1.0-1-Linux-x86_64 to py310_24.3.0-0-Linux-x86_64. This is for [#643](https://github.com/ibpsa/project1-boptest/issues/643). + ## BOPTEST v0.6.0 From 98646533784f1a02afc9ecaa4da5135841085e6d Mon Sep 17 00:00:00 2001 From: ettore zanetti Date: Mon, 13 May 2024 20:35:40 -0700 Subject: [PATCH 07/14] Add missing weather variable warning to data_manager --- data/data_manager.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/data/data_manager.py b/data/data_manager.py index cba49c4f0..b8ef6ea5a 100644 --- a/data/data_manager.py +++ b/data/data_manager.py @@ -427,7 +427,8 @@ def load_data_and_jsons(self): # Get zone and boundary data keys allowed zon_keys, bou_keys = self._get_zone_and_boundary_keys() - + weather_keys = list(self.categories['weather'].keys()) + # Initialize test case data frame self.case.data = \ pd.DataFrame(index=index).rename_axis('time') @@ -436,6 +437,13 @@ def load_data_and_jsons(self): for f in files: df = pd.read_csv(z_fmu.open(f)) cols = df.keys() + + # Check if all weather variables are included in weather.csv + if 'weather' in f: + if not set(cols) <= set(weather_keys): + warnings.warn('The file weather.csv is missing '\ + 'the following variables '+str(set(weather_keys).difference(set(cols)))+'.', Warning) + if 'time' in cols: for col in cols.drop('time'): # Check that column has any of the allowed data keys From 45134e8b0c2b27e0c50633e89fa318d912d4e12b Mon Sep 17 00:00:00 2001 From: ettore zanetti Date: Mon, 13 May 2024 20:43:14 -0700 Subject: [PATCH 08/14] Update release notes --- releasenotes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releasenotes.md b/releasenotes.md index 524d922df..a9995380f 100644 --- a/releasenotes.md +++ b/releasenotes.md @@ -8,7 +8,7 @@ Released on xx/xx/xxxx. - Update pyfmi version from 2.11 to 2.12 and miniconda version from py310_23.1.0-1-Linux-x86_64 to py310_24.3.0-0-Linux-x86_64. This is for [#643](https://github.com/ibpsa/project1-boptest/issues/643). - Remove support and unit testing of example python controllers using Python 2. This is for [#634](https://github.com/ibpsa/project1-boptest/issues/634). - +- Add a warning message in ``data/data_manager.py`` that is displayed if any of the weather variables in ``data/categories.json`` is not in ``wrapped.fmu/resources/weather.csv``. This is for [#500](https://github.com/ibpsa/project1-boptest/issues/500). ## BOPTEST v0.6.0 From 28b2aa71a626bcbf8c1cf7331d0bcd3018b8815d Mon Sep 17 00:00:00 2001 From: Ettore Zanetti Date: Tue, 14 May 2024 08:37:52 -0700 Subject: [PATCH 09/14] Moved warning to _append_csv_data and update release notes --- data/data_manager.py | 16 +++++++++------- releasenotes.md | 2 +- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/data/data_manager.py b/data/data_manager.py index b8ef6ea5a..3e911648c 100644 --- a/data/data_manager.py +++ b/data/data_manager.py @@ -146,12 +146,20 @@ def _append_csv_data(self): # Get zone and boundary data keys allowed zon_keys, bou_keys = self._get_zone_and_boundary_keys() + weather_keys = list(self.categories['weather'].keys()) # Search for .csv files in the resources folder for f in self.files: if f.endswith('.csv'): df = pd.read_csv(f, comment='#') cols = df.keys() + + # Check if all weather variables are included in weather.csv + if 'weather' in f: + if not set(cols) <= set(weather_keys): + warnings.warn('The file weather.csv is missing '\ + 'the following variables '+str(set(weather_keys).difference(set(cols)))+'.', Warning) + if 'time' in cols: for col in cols.drop('time'): # Raise error if col already appended @@ -427,7 +435,7 @@ def load_data_and_jsons(self): # Get zone and boundary data keys allowed zon_keys, bou_keys = self._get_zone_and_boundary_keys() - weather_keys = list(self.categories['weather'].keys()) + # Initialize test case data frame self.case.data = \ @@ -437,12 +445,6 @@ def load_data_and_jsons(self): for f in files: df = pd.read_csv(z_fmu.open(f)) cols = df.keys() - - # Check if all weather variables are included in weather.csv - if 'weather' in f: - if not set(cols) <= set(weather_keys): - warnings.warn('The file weather.csv is missing '\ - 'the following variables '+str(set(weather_keys).difference(set(cols)))+'.', Warning) if 'time' in cols: for col in cols.drop('time'): diff --git a/releasenotes.md b/releasenotes.md index a9995380f..0820d1055 100644 --- a/releasenotes.md +++ b/releasenotes.md @@ -8,7 +8,7 @@ Released on xx/xx/xxxx. - Update pyfmi version from 2.11 to 2.12 and miniconda version from py310_23.1.0-1-Linux-x86_64 to py310_24.3.0-0-Linux-x86_64. This is for [#643](https://github.com/ibpsa/project1-boptest/issues/643). - Remove support and unit testing of example python controllers using Python 2. This is for [#634](https://github.com/ibpsa/project1-boptest/issues/634). -- Add a warning message in ``data/data_manager.py`` that is displayed if any of the weather variables in ``data/categories.json`` is not in ``wrapped.fmu/resources/weather.csv``. This is for [#500](https://github.com/ibpsa/project1-boptest/issues/500). +- Add a warning message upon test case compilation in ``data/data_manager.py`` that is displayed if any of the weather variables in ``data/categories.json`` is not in ``wrapped.fmu/resources/weather.csv``. This is for [#500](https://github.com/ibpsa/project1-boptest/issues/500). ## BOPTEST v0.6.0 From a1a54d4db48884b5de06c5659f7d7b3137ab908e Mon Sep 17 00:00:00 2001 From: Ettore Zanetti Date: Tue, 14 May 2024 08:39:43 -0700 Subject: [PATCH 10/14] Update release notes --- releasenotes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releasenotes.md b/releasenotes.md index 0820d1055..8cea7a331 100644 --- a/releasenotes.md +++ b/releasenotes.md @@ -8,7 +8,7 @@ Released on xx/xx/xxxx. - Update pyfmi version from 2.11 to 2.12 and miniconda version from py310_23.1.0-1-Linux-x86_64 to py310_24.3.0-0-Linux-x86_64. This is for [#643](https://github.com/ibpsa/project1-boptest/issues/643). - Remove support and unit testing of example python controllers using Python 2. This is for [#634](https://github.com/ibpsa/project1-boptest/issues/634). -- Add a warning message upon test case compilation in ``data/data_manager.py`` that is displayed if any of the weather variables in ``data/categories.json`` is not in ``wrapped.fmu/resources/weather.csv``. This is for [#500](https://github.com/ibpsa/project1-boptest/issues/500). +- Add a warning message upon test case compilation in ``data/data_manager.py`` that is displayed if any of the weather variables in ``data/categories.json`` is not in ``/resources/weather.csv``. This is for [#500](https://github.com/ibpsa/project1-boptest/issues/500). ## BOPTEST v0.6.0 From b8d0db048b4dc1bf91904fb620ed6aa5ae1436fd Mon Sep 17 00:00:00 2001 From: David Blum Date: Tue, 23 Jul 2024 13:13:25 -0700 Subject: [PATCH 11/14] Remove matplotlib requirement from travis --- .travis.yml | 44 ++++++++++++++++++++++---------------------- testing/utilities.py | 3 ++- 2 files changed, 24 insertions(+), 23 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6cdb3ed5c..2ed0e16e7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -28,65 +28,65 @@ before_script: jobs: include: - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_parser - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_data - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_forecast - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_kpis - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 rdflib==6.3.2 bacpypes==0.18.7 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 rdflib==6.3.2 bacpypes==0.18.7 script: cd testing && make build_jm_image && make test_bacnet - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_testcase - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_readme_commands - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_testcase1 - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_testcase2 - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_testcase3 - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_bestest_air - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_bestest_hydronic - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_bestest_hydronic_heat_pump - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_singlezone_commercial_hydronic - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && make test_twozone_apartment_hydronic - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_office_simple_air ARG="-s test_peak_heat_day,test_typical_heat_day" - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_office_simple_air ARG="-s test_peak_cool_day,test_typical_cool_day,test_mix_day" - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_office_simple_air ARG="-s API" - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s test_peak_heat_day,test_shoulder" - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s test_typical_heat_day,test_summer" - python: 3.9 - install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 matplotlib==3.3.4 requests==2.25.1 - script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s API" \ No newline at end of file + install: pip install --upgrade pip && pip install pandas==1.2.5 numpy==1.20.2 requests==2.25.1 + script: cd testing && make build_jm_image && travis_wait 90 make test_multizone_residential_hydronic ARG="-s API" diff --git a/testing/utilities.py b/testing/utilities.py index 639cfc6c9..688ba9325 100644 --- a/testing/utilities.py +++ b/testing/utilities.py @@ -12,7 +12,6 @@ import json import pandas as pd import re -import matplotlib.pyplot as plt from datetime import datetime @@ -96,6 +95,8 @@ def compare_references(vars_timeseries = ['reaTRoo_y'], ''' + import matplotlib.pyplot as plt + dir_old = os.path.join(get_root_path(), 'testing', 'references', refs_old) for subdir, _, files in os.walk(dir_old): From 4f0d0e338817a56a1fea1024bc96d25853c8bdd1 Mon Sep 17 00:00:00 2001 From: David Blum Date: Tue, 23 Jul 2024 13:13:35 -0700 Subject: [PATCH 12/14] Update release notes --- releasenotes.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releasenotes.md b/releasenotes.md index 8cea7a331..dab9c7a41 100644 --- a/releasenotes.md +++ b/releasenotes.md @@ -9,6 +9,7 @@ Released on xx/xx/xxxx. - Update pyfmi version from 2.11 to 2.12 and miniconda version from py310_23.1.0-1-Linux-x86_64 to py310_24.3.0-0-Linux-x86_64. This is for [#643](https://github.com/ibpsa/project1-boptest/issues/643). - Remove support and unit testing of example python controllers using Python 2. This is for [#634](https://github.com/ibpsa/project1-boptest/issues/634). - Add a warning message upon test case compilation in ``data/data_manager.py`` that is displayed if any of the weather variables in ``data/categories.json`` is not in ``/resources/weather.csv``. This is for [#500](https://github.com/ibpsa/project1-boptest/issues/500). +- Remove matplotlib requirement from travis unit testing. This is for [#655](https://github.com/ibpsa/project1-boptest/issues/655). ## BOPTEST v0.6.0 From dc139cda4c8018611b97a41034481d4cc8537d62 Mon Sep 17 00:00:00 2001 From: David Blum Date: Mon, 29 Jul 2024 12:27:46 -0400 Subject: [PATCH 13/14] Update Dockerfile to specify version of scipy --- Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 4fdb46fd6..574804e2a 100755 --- a/Dockerfile +++ b/Dockerfile @@ -26,8 +26,7 @@ RUN cd $HOME && \ conda create --name pyfmi3 python=3.10 -y && \ conda activate pyfmi3 && \ conda install -c conda-forge pyfmi=2.12 -y && \ - pip install flask-restful==0.3.9 werkzeug==2.2.3 && \ - conda install pandas==1.5.3 flask_cors==3.0.10 matplotlib==3.7.1 requests==2.28.1 + pip install flask-restful==0.3.9 werkzeug==2.2.3 pandas==1.5.3 flask_cors==3.0.10 scipy==1.13.0 matplotlib==3.7.1 requests==2.28.1 WORKDIR $HOME From 670b44c448a29d87a47835c315b9de9bc01ea2f9 Mon Sep 17 00:00:00 2001 From: David Blum Date: Mon, 29 Jul 2024 14:42:47 -0700 Subject: [PATCH 14/14] Update release notes [ci skip] --- releasenotes.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releasenotes.md b/releasenotes.md index dab9c7a41..891985898 100644 --- a/releasenotes.md +++ b/releasenotes.md @@ -10,6 +10,7 @@ Released on xx/xx/xxxx. - Remove support and unit testing of example python controllers using Python 2. This is for [#634](https://github.com/ibpsa/project1-boptest/issues/634). - Add a warning message upon test case compilation in ``data/data_manager.py`` that is displayed if any of the weather variables in ``data/categories.json`` is not in ``/resources/weather.csv``. This is for [#500](https://github.com/ibpsa/project1-boptest/issues/500). - Remove matplotlib requirement from travis unit testing. This is for [#655](https://github.com/ibpsa/project1-boptest/issues/655). +- Specify version of scipy to 1.13.0 in test case Dockerfile. This is for [#657](https://github.com/ibpsa/project1-boptest/issues/657). ## BOPTEST v0.6.0