NatLabRockies / NatLabRockies/OpenStudio

Investigate function of `openstudio measure -u my_measure` beyond already reported issue with clearing out errors.

Open
#5,488 1 comment 0 reactions 1 assignee View on GitHub

@DavidGoldwasser is already working on this.

Since Oct 1, 2025.

Triage
Dominant language
C++
Stars
646
Forks
237
Avg merge
3d 11h
Merged PRs (30d)
10

Description

Issue overview

Across multiple measure when I remove argument from measure.xml and then update it doesn't get added back. There are no errors except for about files in test output which are not a problem below is the log for for this.

Current Behavior

Here is the output, nothing is changed in the measure.xml

(base) dgoldwas:0:openstudio-ee-gem$ openstudio measure -u lib/measures/fan_assist_night_ventilation/
Attempting to load measure 'lib/measures/fan_assist_night_ventilation/'
Successfully loaded measure 'lib/measures/fan_assist_night_ventilation/'
[utilities.bcl.BCLMeasure] <0> /Users/dgoldwas/Documents/github/nrel/openstudio-ee-gem/lib/measures/fan_assist_night_ventilation/tests/output/demo_a_output.osm is not inside an approved subfolder.
[utilities.bcl.BCLMeasure] <0> /Users/dgoldwas/Documents/github/nrel/openstudio-ee-gem/lib/measures/fan_assist_night_ventilation/tests/output/test_output.osm is not inside an approved subfolder.
{
"arguments" :
[
{
"default_value" : "1000",
"display_name" : "Exhaust Flow Rate",
"model_dependent" : false,
"name" : "design_flow_rate",
"required" : true,
"type" : "Double",
"units" : "cfm"
},
{
"default_value" : "0.65",
"display_name" : "Fan Total Efficiency",
"model_dependent" : false,
"name" : "efficiency",
"required" : true,
"type" : "Double"
},
{
"display_name" : "Choose a Ventilation Schedule.",
"model_dependent" : false,
"name" : "ventilation_schedule",
"required" : true,
"type" : "Choice"
},
{
"default_value" : "55",
"display_name" : "Minimum Outdoor Temperature",
"model_dependent" : false,
"name" : "min_outdoor_temp",
"required" : true,
"type" : "Double",
"units" : "F"
}
],
"attributes" :
[
{
"datatype" : "string",
"name" : "Measure Type",
"value" : "ModelMeasure"
},
{
"datatype" : "string",
"name" : "Intended Software Tool",
"value" : "Apply Measure Now"
},
{
"datatype" : "string",
"name" : "Intended Software Tool",
"value" : "OpenStudio Application"
},
{
"datatype" : "string",
"name" : "Intended Software Tool",
"value" : "Parametric Analysis Tool"
},
{
"datatype" : "string",
"name" : "Intended Use Case",
"value" : "Model Articulation"
}
],
"class_name" : "FanAssistNightVentilation",
"description" : "This measure is meant to roughly model the impact of fan assisted night ventilation. The user needs to have a ventilation schedule in the model, operable windows where natural ventilation is desired, and air walls or interior operable windows in walls and floors to define the path of air through the building. The user specified flow rate is proportionally split up based on the area of exterior operable windows. The size of interior air walls and windows doesn't matter.",
"display_name" : "Fan Assist Night Ventilation",
"files" :
[
{
"checksum" : "FFCBFF29",
"filename" : "LICENSE.md",
"filetype" : "md",
"usage_type" : "license"
},
{
"checksum" : "D87E7C11",
"filename" : "README.md",
"filetype" : "md",
"usage_type" : "readme"
},
{
"checksum" : "703C9964",
"filename" : "README.md.erb",
"filetype" : "erb",
"usage_type" : "readmeerb"
},
{
"checksum" : "3DBADD15",
"filename" : "measure.rb",
"filetype" : "rb",
"usage_type" : "script",
"version" :
{
"identifier" : "2.0.0",
"min_compatible" : "2.0.0",
"software_program" : "OpenStudio"
}
},
{
"checksum" : "374EC8C7",
"filename" : "FanAssistNightVentilationMeasureGuide.pdf",
"filetype" : "pdf",
"usage_type" : "resource"
},
{
"checksum" : "B5B5CCA9",
"filename" : "1028_night_purge_test_192.osm",
"filetype" : "osm",
"usage_type" : "test"
},
{
"checksum" : "57D36626",
"filename" : "EdgeTest.osm",
"filetype" : "osm",
"usage_type" : "test"
},
{
"checksum" : "6E213AF1",
"filename" : "demo_a.osm",
"filetype" : "osm",
"usage_type" : "test"
},
{
"checksum" : "6643C1A7",
"filename" : "example_model.osm",
"filetype" : "osm",
"usage_type" : "test"
},
{
"checksum" : "8F5F0305",
"filename" : "fan_assist_night_ventilation_test.rb",
"filetype" : "rb",
"usage_type" : "test"
},
{
"checksum" : "B4E2D89E",
"filename" : "no_opp_win.osm",
"filetype" : "osm",
"usage_type" : "test"
}
],
"measure_dir" : "/Users/dgoldwas/Documents/github/nrel/openstudio-ee-gem/lib/measures/fan_assist_night_ventilation",
"modeler_description" : "It's up to the modeler to choose a flow rate that is approriate for the fenestration and interior openings within the building. Each zone with operable windows will get a zone ventilation object. The measure will first look for a celing opening to find a connection for zone a zone mixing object. If a ceiling isn't found, then it looks for a wall. Don't provide more than one ceiling paths or more than one wall path. The end result is zone ventilation object followed by a path of zone mixing objects. The fan consumption is modeled in the zone ventilation object, but no heat is brought in from the fan. There is no zone ventilation object at the end of the path of zones. In addition to schedule, the zone ventilation is controlled by a minimum outdoor temperature.\n\nThe measure was developed for use in un-conditioned models. Has not been tested in conjunction with mechanical systems.\n\nTo address an issue in OpenStudio zones with ZoneVentilation, this measure adds an exhaust fan added as well, but the CFM value for the exhaust fan is set to 0.0",
"name" : "fan_assist_night_ventilation",
"outputs" : null,
"schema_version" : "3.1",
"tags" :
[
"HVAC.Ventilation"
],
"type" : "measure",
"uid" : "5e77cb11-0fa9-432b-97bd-87c40949ee1f",
"version_id" : "9faaaac3-a100-4359-9833-cbef50454be7",
"version_modified" : "20250925T153344Z",
"xml_checksum" : "26DDAE64"
}

Expected Behavior

Steps to Reproduce

Possible Solution

Details

Environment

Some additional details about your environment for this issue (if relevant):

  • Platform (Operating system, version):
  • Version of OpenStudio (if using an intermediate build, include SHA):
Context

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.