Skip to content

Commit

Permalink
v4.0.1 changelog/release notes/ version update
Browse files Browse the repository at this point in the history
  • Loading branch information
andrew-platt committed Jan 30, 2025
1 parent 4eaa7f2 commit 2f7327b
Show file tree
Hide file tree
Showing 4 changed files with 176 additions and 1 deletion.
81 changes: 81 additions & 0 deletions docs/changelogs/ReleaseProcess.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# OpenFAST release process

## Prep
### pull request
1. Create release changelog.md
2. Post PR with contents of the changelog/release notes
3. Get reviews and address all issues

### PR branch updates
1. checkout branch to merge in and verify builds on VS if any changes for VS or new files added
2. Update the documentation version in docs/conf.py
3. Update the versions in docs/source/user/api_change.rst
4. Verify readthedocs builds correctly
5. Update `openfast_io/pyproject.toml`

****

## Posting the release
### r-test
1. Merge and add annotated tag
2. Update pointer on main OF repository (not always necessary)

### Main repository
1. Merge PR
2. Create release with new tag
* Copy `Changelog` section down from the changlog.md file to release notes
* add short intro section at top with 2 sentence synopsis (see prior release for this)
* copy `Precompiled Windows Binaries` section from prior release, and update as needed into the release notes
* check the `create discussion` box
* Post
3. delete `rc-` branch if merging from one

### Windows executables build and upload
After posting and tagging release
1. Pull main and tags
* `git fetch --tags OpenFAST`
* `git fetch OpenFAST main:main`
* `git checkout main`
2. Delete `vs-build` and checkout again
* `rm -rf vs-build`
* `git checkout vs-build`
3. Set a couple of VS files to not track changes on files that VS wants to update Windows related stuff in
```
git update-index --assume-unchanged vs-build/MAPlib/MAP_dll.vcxproj vs-uild/Registry/FAST_Registry.vcxproj
```

4. Compile executables for Windows builds
* Run one of the executables and check the version info. Muck about with VS if there is an issue.
* Also run `dumpbin.exe /dependents <exe>.exe` to check static linking
* NOTE: build the simulink last -- it messes up some things otherwise
- [ ] AeroDyn_Driver_x64.exe
- [ ] AeroDyn_Driver_x64_OpenMP.exe
- [ ] AeroDyn_Inflow_C_Binding_x64.dll
- [ ] AeroDyn_Inflow_C_Binding_x64_OpenMP.dll
- [ ] BeamDyn_Driver_x64.exe
- [ ] DISCON.dll (x64)
- [ ] DISCON_ITIBarge.dll (x64)
- [ ] DISCON_OC3Hywind.dll (x64)
- [ ] DISCON_SC.dll (x64)
- [ ] FAST.Farm_x64.exe
- [ ] FAST.Farm_x64_OMP.exe
- [ ] FAST_SFunc.mexw64 -- build from MATLAB
- [ ] HydroDynDriver_x64.exe
- [ ] HydroDyn_C_Binding_x64.dll
- [ ] IfW_C_Binding_x64.dll
- [ ] InflowWind_Driver_x64.exe
- [ ] InflowWind_Driver_x64_OpenMP.exe
- [ ] MoorDyn_Driver_x64.exe
- [ ] MoorDyn_C_Binding_x64.dll
- [ ] OpenFAST-Simulink_x64.dll -- change `additional dependencies` in the `OpenFAST-Simulink` project in `FAST` to point to correct install of MATLAB
- [ ] openfast_x64.exe
- [ ] SubDyn_x64.exe
- [ ] Turbsim_x64.exe

5. Upload all filesUnset the no tracking of files
```
git ls-files -v | grep "^[a-z]"
git update-index --no-assume-unchanged <files-from-cmd-above>
```


87 changes: 87 additions & 0 deletions docs/changelogs/v4.0.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
**Feature or improvement description**
Pull request to merge `rc-4.0.1` into `main` and create a tagged release for v4.0.1

See the milestone and project pages for additional information

https://github.com/OpenFAST/openfast/milestone/16

Test results, if applicable
See GitHub Actions

### Release checklist:
- [ ] Update the documentation version in docs/conf.py
- [ ] Update the versions in docs/source/user/api\_change.rst
- [ ] Verify readthedocs builds correctly
- [ ] Create a tag in OpenFAST
- [ ] Create a merge commit in r-test and add a corresponding annotated tag
- [ ] Compile executables for Windows builds
- [ ] `AeroDyn_Driver_x64.exe`
- [ ] `AeroDyn_Driver_x64_OpenMP.exe`
- [ ] `AeroDyn_Inflow_C_Binding_x64.dll`
- [ ] `AeroDyn_Inflow_C_Binding_x64_OpenMP.dll`
- [ ] `BeamDyn_Driver_x64.exe`
- [ ] `DISCON.dll (x64)`
- [ ] `DISCON_ITIBarge.dll (x64)`
- [ ] `DISCON_OC3Hywind.dll (x64)`
- [ ] `DISCON_SC.dll (x64)`
- [ ] `FAST.Farm_x64.exe`
- [ ] `FAST.Farm_x64_OMP.exe`
- [ ] `FAST_SFunc.mexw64`
- [ ] `HydroDynDriver_x64.exe`
- [ ] `HydroDyn_C_Binding_x64.dll`
- [ ] `IfW_C_Binding_x64.dll`
- [ ] `InflowWind_Driver_x64.exe`
- [ ] `InflowWind_Driver_x64_OpenMP.exe`
- [ ] `MoorDyn_Driver_x64.exe`
- [ ] `MoorDyn_C_Binding_x64.dll`
- [ ] `OpenFAST-Simulink_x64.dll`
- [ ] `openfast_x64.exe`
- [ ] `SubDyn_x64.exe`
- [ ] `Turbsim_x64.exe`

# Changelog

## Overview

This release includes multiple small bug-fixes including compilation issues with Flang and Intel (IFX), improved diagnostics for the AeroDyn\_Inflow\_c-binding interace, user specified external loads for MoorDyn, `Wind_IO` updates, a fix for a stack overflow with FAST.Farm built with Visual Studio on Windows, and other minor bugfixes.



## General

### Wind_IO

#2603 updates to handle writing OpenFAST models from weis and wind_io (mayankchetan)


### Build systems

#2607 Windows VS build -- stack overflow with FAST.Farm (andrew-platt)

#2619 ROCM Flang doesn't compile NWTC_IO.f90 (andrew-platt)

#2621 Bugfix: missing include path in `create_FAST_SFunc.m` (andrew-platt)


## Module changes

### AeroDyn

#2609 AD bugfix: aerodyn driver non-OLAF combined cases don't update wind (andrew-platt)

#2615 Improve diagnostics for ADI_c interface coupling (andrew-platt)


### MoorDyn

#2597 MD: User-specified external forces and translational damping for MoorDyn point, rod, and body objects (luwang00)


## Input file changes

No input file changes are required from 4.0.0. MoorDyn can contain an option section for `External Loads`.

Full list of changes: https://openfast.readthedocs.io/en/main/source/user/api_change.html

Full input file sets: https://github.com/OpenFAST/r-test/tree/v4.0.1 (example input files from the regression testing)

2 changes: 1 addition & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ def runDoxygen(sourcfile, doxyfileIn, doxyfileOut):
# The short X.Y version.
version = u'4.0'
# The full version, including alpha/beta/rc tags.
release = u'v4.0.0'
release = u'v4.0.1'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down
7 changes: 7 additions & 0 deletions docs/source/user/api_change.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,13 @@ Thus, be sure to implement each in order so that subsequent line numbers are cor



OpenFAST v4.0.0 to OpenFAST v4.0.1
----------------------------------

No input file changes are required. MoorDyn can contain an option section for
`External Loads` (see the MoorDyn documentation for details).


OpenFAST v3.5.5 to OpenFAST 4.0.0
---------------------------------

Expand Down

0 comments on commit 2f7327b

Please sign in to comment.