News and Releases

News and Releases#

Keep up with the latest updates from components of the WETO Stack here! While each project has its own documentation, this page contains high-level information, links to sources, and other news that may be of interest to the WETO community.

Releases from the past 30 days#

Hide code cell source
import os
from pathlib import Path
from datetime import datetime, timezone, timedelta
from ghapi.all import GhApi
import yaml
from IPython.display import Markdown, display

github_token = os.getenv('GH_TOKEN')

software_attr_dir = Path("..", "..", "software_attributes")

model_list_inputs = yaml.safe_load( open(software_attr_dir / "database_list.yaml", "r") )
models = model_list_inputs["active"] + model_list_inputs["partial"]

model_attributes_map = {
    model: yaml.safe_load( open( software_attr_dir / "database" / f"{model}.yaml", "r") )
    for model in models
}

repos = [(atts["github_account"], atts["github_repo"]) for model, atts in model_attributes_map.items()]

recent_releases = []
thirty_days_ago = datetime.today() - timedelta(days=30)
for repo in repos:
    api = GhApi(owner=repo[0], repo=repo[1], token=github_token)
    releases = api.repos.list_releases()
    if len(releases) < 1:
        continue
    last_release_date = datetime.fromisoformat(releases[0]["published_at"]).replace(tzinfo=None)
    if last_release_date > thirty_days_ago:
        recent_releases.append((repo[0], repo[1], last_release_date))
recent_releases.sort(key=lambda x: x[2], reverse=True)

release_list_md = ""
for account, repo, release_date in recent_releases:
    release_list_md += f"- {account}/{repo} - {release_date.strftime('%Y-%m-%d')}\n"

display(Markdown(release_list_md))
display(Markdown(f"*Updated on {datetime.now(tz=timezone(-timedelta(hours=7))).strftime('%Y-%m-%d')}*"))
# Note the timedelta is inaccurate for part of the year, but it's purpose is to have the correct day
  • wisdem/weis - 2024-12-30

  • nrel/rosco - 2024-12-27

  • NREL/rex - 2024-12-26

  • openfast/openfast - 2024-12-24

  • openfast/openfast - 2024-12-24

  • nrel/flasc - 2024-12-20

  • nrel/hopp - 2024-12-19

  • nrel/floris - 2024-12-19

  • wisdem/wisdem - 2024-12-18

  • NREL/dgen - 2024-12-18

  • exawind/amr-wind - 2024-12-13

  • wisdem/wombat - 2024-12-12

Updated on 2025-01-03

Latest News#