|
1 | 1 | ```markdown |
| 2 | +Release 0.8.1 December 9, 2025 |
| 3 | + |
| 4 | +The primary purpose of this release was to correct the JSON format for HED schemas so that it would accurately distinguish between inherited and non-inherited attributes. The documentation layout was also improved with quick links. |
| 5 | + |
| 6 | + |
| 7 | +## Highlights |
| 8 | + |
| 9 | +- HED schema JSON export is now cleaner: empty list attributes are omitted instead of written as empty arrays, with stronger tests around inheritance and round-trip behavior. |
| 10 | +- Default HED XML schema version bumped to **8.4.0**, so helper functions pick up the latest standard without extra configuration. |
| 11 | +- Sphinx docs get a polished Furo theme setup, project logo, sidebar quick links, dark-mode fixes, and a proper GitHub repo icon. |
| 12 | +- CI updated to use `actions/checkout@v6` via Dependabot |
| 13 | + |
| 14 | +## What’s Changed |
| 15 | + |
| 16 | +### Schema & JSON I/O |
| 17 | + |
| 18 | +- **Omit empty list attributes in schema JSON** Updated `build_attributes_dict` in `schema2json.py` so list-valued attributes like `suggestedTag`, `relatedTag`, `valueClass`, and `unitClass` are only written when non-empty, instead of always being present as `[]`. This produces a more compact JSON representation and avoids ambiguous “empty list means nothing” cases. |
| 19 | + |
| 20 | +- **Stronger JSON format tests** Refined tests in `test_json_explicit_attributes.py` and `test_schema_format_roundtrip.py` to assert that: |
| 21 | + - Tags without `relatedTag` / `valueClass` / `unitClass` simply do not have those keys in `attributes`. |
| 22 | + - Any list attributes that *are* present must be non-empty. |
| 23 | + - A full 8.4.0 schema is saved as JSON and scanned to ensure no empty list attributes sneak into the output. |
| 24 | + |
| 25 | +- **Schema comparison & round-trip robustness** Extended round-trip tests for JSON schema export/import so that schema comparison is aligned with the new “omit empty lists” behavior and no longer relies on placeholder empty arrays. |
| 26 | + |
| 27 | +- **Default XML schema → 8.4.0** Updated the default XML schema version used by helper utilities to `8.4.0` (from 8.3.0). This ensures `load_schema_version()` and similar functions resolve to the current standard HED schema by default. |
| 28 | + |
| 29 | + |
| 30 | +### Documentation & Site |
| 31 | + |
| 32 | +- **Furo theme configuration and versioning** Updated `docs/conf.py` to: |
| 33 | + - Set `release = "0.8.0"` for the docs. |
| 34 | + - Use the Furo theme with `html_static_path = ["_static"]`. |
| 35 | + - Register extra assets: `custom.css` and `gh_icon_fix.js`. |
| 36 | + - Attach a project logo via `html_logo`. |
| 37 | + |
| 38 | +- **Sidebar quick links** Added a new `quicklinks.html` sidebar template and wired it into `html_sidebars` so all pages include a “Quick links” section pointing to HED homepage, resources, schema browser, specification, and online tools. |
| 39 | + |
| 40 | +- **Dark-mode & header polish** Extended `custom.css` and the new `gh_icon_fix.js` helper to: |
| 41 | + - Make the sidebar search box readable in dark mode (background, placeholder, and icon colors). |
| 42 | + - Hide the raw “view source” / “edit this page” links in the header. |
| 43 | + - Replace them with a single GitHub icon button that points to the repo root and works in both light and dark themes. |
| 44 | + |
| 45 | +- **Minor formatting clean-ups** |
| 46 | + Small documentation/test formatting adjustments, including updating tests to load schema version 8.4.0 and aligning text with the new JSON behavior. |
| 47 | + |
| 48 | +### CI / Tooling |
| 49 | + |
| 50 | +- **GitHub Actions: `actions/checkout` v6** |
| 51 | + Dependabot PR **#1155** updates all workflows to use `actions/checkout@v6` instead of v5, pulling in the latest upstream improvements (including Node.js 24 support and updated credential handling). |
| 52 | + |
| 53 | + |
2 | 54 | Release 0.8.0 November 18, 2025 |
3 | 55 | - **Unified CLI Interface**: Added `hedpy` command-line tool with git-like subcommand structure. |
4 | 56 | - Main command: `hedpy` with subcommands for all HED operations. |
|
0 commit comments