openfast icon indicating copy to clipboard operation
openfast copied to clipboard

Updates to openfast_io to match current dev branch API

Open mayankchetan opened this issue 6 months ago • 1 comments

This PR is NOT ready to merge until TODOs below are cleared.

Feature or improvement description

Updates to the openfast_io library to match the current dev branch API. Once merged, will provide OpenFAST users with an up-to-date library that they can import to read/write OpenFAST files. This follows the fst_vt nested dictionary structure developed under WEIS and heavily borrows code from there.

This library is currently limited to OpenFAST and does not work with FAST.Farm or any of the module drivers.

Related PRs: https://github.com/OpenFAST/openfast/pull/2333, https://github.com/OpenFAST/openfast/pull/2188

Related issue, if one exists

https://github.com/OpenFAST/openfast/issues/2233, https://github.com/OpenFAST/openfast/issues/2261, https://github.com/OpenFAST/openfast/issues/1851

Impacted areas of the software

openfast_io

Additional supporting information

Test results, if applicable

pytest added to span most OpenFAST input files (drivers not included). Based on @andrew-platt comments in https://github.com/OpenFAST/openfast/issues/2233, need to introduce automated testing.

TODO:

  • [x] Add test automations & GH actions
  • [ ] Create an OpenFAST PyPI account so the openfast_io python package can be installed with pip
  • [ ] Set up a trusted publisher to securely upload the python package to PyPI
  • [ ] Setup conga-forge for openfast_io since most NREL tools like WEIS and WISDEM prefer it.
  • [x] Check if we can eliminate the Poetry file ~~We will continue using Poetry~~
  • [x] Add additional tests based on recommendations in this PR if any
  • [x] Address old API warning thrown by AD15
  • [ ] Add simple documentation to help users get started
  • [ ] Add badges for PyPi and conda-forge

APIs to upgrade before merge:

  • [ ] https://github.com/OpenFAST/openfast/pull/986
  • [x] https://github.com/OpenFAST/openfast/pull/1295
  • [x] https://github.com/OpenFAST/openfast/pull/2203
  • [x] https://github.com/OpenFAST/openfast/pull/2358
  • [x] https://github.com/OpenFAST/openfast/issues/93
  • [x] https://github.com/OpenFAST/openfast/pull/2401

mayankchetan avatar Aug 07 '24 14:08 mayankchetan