circuitpython-org/_board/winterbloom_sol.md
Jeff Epler 4715875cc4 Fix board dates to always be of the form YYYY-MM-DD
.. leading zeros are required for `frontmatter` to treat them as dates
rather than strings, apparently per the YAML specification.

This was done by script:
```py
import re
import datetime
import pathlib
import sys

import frontmatter

rx = re.compile(r'^(\s*)date_added:.*$', re.M)

for path_str in sys.argv[1:]:
    print(path_str)
    path = pathlib.Path(path_str)

    post = frontmatter.load(path)
    date_added = post.get("date_added", "")

    if isinstance(date_added, datetime.date):
        continue

    if isinstance(date_added, str):
        try:
            date_added = datetime.datetime.strptime(date_added, "%Y-%m-%d")
        except ValueError as exc:
            print(f"Failed to parse date {date_added} in {path_str}: {exc}")
            continue

    date_added = date_added.date()
    content = path.read_text("utf-8")
    new_content = rx.sub(lambda m: f"{m.group(1)}date_added: {date_added}", content)
    assert content != new_content

    path.write_text(new_content, "utf-8")
```
2024-03-22 11:31:45 -05:00

680 B

layout board_id title name manufacturer board_url board_image downloads_display blinka date_added family bootloader_id
download winterbloom_sol Winterbloom Sol Download Winterbloom Sol Alethea Flowers
https://winterbloom.com
sol.jpg true false 2019-11-07 atmel-samd winterbloom_sol

Winterbloom Sol is a modular synthesizer (Eurorack) module. It is a multi-purpose, scriptable USB MIDI to CV/gate converter. Its code can be modified while in use to change how it processes MIDI data into CV and gate outputs.

Purchase

Sol is available for purchase on Winterbloom.com and several modular synthesizer distributors.