4.1. SCR for ARMI 0.6.3
This is a listing of all the Software Change Request (SCR) changes in the ARMI repository, as part of the current release.
Below, this SCR is organized into the individual changes that comprise the net SCR for this release. Each SCR below explicitly lists its impact on ARMI requirements, if any. It is also important to note ARMI and all its requirements are tested entirely by the automated testing that happens during the ARMI build. None of the SCRs below will be allowed to happen if any single test fails, so it can be guaranteed that all SCRs below have fully passed all testing.
4.1.1. SCR Listing
The following lists display all the SCRs in this release of the ARMI framework.
List of SCRs of type: Code Changes, Features
PR #2385: Set materials.FAIL_ON_RANGE to True by default
Rationale: A simulation that has found that it has invalid or insufficient material data should fail by default.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2399: New exception for mpi4py import
Rationale: Upgrading mpi4py caused a new error; this update handles that situation.
Impact on Requirements: NA
Author: Arrielle Opotowsky
Reviewer: John Stilley
PR #2402: Improving cleanPath and related tooling
Rationale: cleanPath is not behaving like the variable names would indicate, so issues with naming were corrected in cleanPath as well as in cleanTempDirs.
Impact on Requirements: NA
Author: Arrielle Opotowsky
Reviewer: John Stilley
PR #2410: Adding Environment Variable Checks to support unit tests in read-only environments
Rationale: ARMI is being run in ready-only containers downstream, and these changes are needed to support that.
Impact on Requirements: NA
Author: Arrielle Opotowsky
Reviewer: John Stilley
PR #2411: Refactoring Shuffling Logic
Rationale: Different ARMI Applications should be able to share common shuffling input definitions which are independent of application specifics such as assembly numbering.
Impact on Requirements: The requirement R_ARMI_SHUFFLE is touched, including the implementation I_ARMI_SHUFFLE and testing T_ARMI_SHUFFLE.
Author: Jason Meng
Reviewer: John Stilley
PR #2423: Fix issue with recent runLog changes
Rationale: This addresses a shortcoming in the initial PR to update the logs dir feature in PR #2410.
Impact on Requirements: NA
Author: Arrielle Opotowsky
Reviewer: John Stilley
PR #2428: Copying assembly flags when creating a new assembly from type
Rationale: When creating a copy of a given assembly, it is desirable to preserve whatever flags have been assigned to the original source assembly.
Impact on Requirements: NA
Author: Michael Jarrett
Reviewer: John Stilley
PR #2432: Adding forceClean to snapshot deletions
Rationale: This is a change that was determined to be needed based on recent feature updates to cleanPath.
Impact on Requirements: NA
Author: Arrielle Opotowsky
Reviewer: John Stilley
List of SCRs of type: Code Changes, Maintenance, or Trivial
PR #2393: Shortening some test class names that are too long
Rationale: These long names were causing our docs to render rather ugly, and we want our docs to be readable.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2407: Removing unused Inconel material properties
Rationale: Removing unused code is a best practice, but in this case we are simplifying upcoming materials work.
Impact on Requirements: NA
Author: John Stilley
Reviewer(s): dpham-materials, Arrielle Opotowsky
PR #2420: Adding unit testing to HexBlock.getPinPitch
Rationale: We should always add new testing when we add new code.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2421: Renaming misloadSwap to swap
Rationale: Users might want to model intentional assembly swaps in their shuffling files without using a name that makes it sound like a mistake was made.
Impact on Requirements: NA
Author: Michael Jarrett
Reviewer: John Stilley
PR #2424: Removing deprecation warning from test
Rationale: Code maintenance is important to well functioning code.
Impact on Requirements: NA
Author: Arrielle Opotowsky
Reviewer: John Stilley
PR #2425: Adding code coverage
Rationale: Covering more of our codebase with unit tests is always preferable.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2426: Moving DIF3D parameters out of ARMI
Rationale: Ideally, ARMI should not be responsible for maintain features that are not generally useful to a wide audience, and only used by one downstream project.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
List of SCRs of type: Documentation-Only Changes
PR #2386: Adding a count of how many settings are in ARMI
Rationale: For long-term tracking, it would be nice to see how many Settings are defined in ARMI.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2390: Ensuring that SCRs will build correctly during main branch pushes
Rationale: The SCR should, ideally, build from PRs and from the main branch.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2395: Cleaning up the docs
Rationale: We want to make sure the docs render well in PDF.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2398: Starting version 0.6.3 release cycle
Rationale: The ARMI version and SCR should be ready for a release at a moment’s notice.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2403: Improving nuclidebases documentation - byMcnpId
Rationale: The dictionary was keyed of strings, not integers, and our documentation should be correct.
Impact on Requirements: A very minor documentation change to I_ARMI_ND_ISOTOPES0 for R_ARMI_ND_ISOTOPES.
Author: John Stilley
Reviewer(s): Arrielle Opotowsky, Drew Johnson
PR #2409: Clarifying PIP version in user install docs
Rationale: It is important to keep the docs clear, and this section is only important to a small number of the ARMI user base.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2418: Adding descriptions to two impl tags
Rationale: Requirement implementation tags should have description fields.
Impact on Requirements: The implementation tags I_ARMI_ROTATE_HEX_BLOCK and I_ARMI_ROTATE_HEX_BURNUP were both missing descriptions, and those were added. This is a documentation-only change, that does not impact the related requirements.
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2419: Ensuring all impl and test tags show in the docs
Rationale: All requirements should have both test and impl tags, correct and visible in the docs.
Impact on Requirements: Three requirements had Implementation tags that were not being shown in the docs but are now: R_ARMI_DEPL_TABLES, R_ARMI_DEPL_ABC, and R_ARMI_ASSEM_HEIGHT_PRES. And seven requirements had test tags that were not being rendered in the docs but are now: R_ARMI_GRID_HEX, R_ARMI_GRID_SYMMETRY, R_ARMI_GRID_SYMMETRY_LOC, R_ARMI_GRID_EQUIVALENTS, R_ARMI_GRID_HEX_TYPE, R_ARMI_GRID_GLOBAL_POS, and R_ARMI_GRID_ELEM_LOC.
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2433: Adding a high-level Parameter Report to the docs
Rationale: This improves the readability of the User Documentation.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Arrielle Opotowsky
PR #2438: Adding ARMI commit to STR in docs
Rationale: It is useful to have the commit hash in the verbose print outs, so it is clear later what exact commit the docs were made from.
Impact on Requirements: NA
Author: John Stilley
Reviewer: Tony Alberti