Skip to content

Commit 84edb03

Browse files
Release v0.4.0
1 parent 2e5a3de commit 84edb03

7 files changed

Lines changed: 1399 additions & 1022 deletions

File tree

CHANGELOG.md

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,26 @@ All notable changes to this project will be documented in this file.
44

55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7+
## [Unreleased]
8+
9+
## [0.4.0] - 2026-05-09
10+
### Changed
11+
- Updated `spine` dependency to v0.11.0+ for improved hovertext support
12+
- Updated Dash dependency to v4.1.0+
13+
- Modernized the application layout with a responsive control rail and event display shell
14+
- Updated visual styling to follow the SPINE black, gray, and orange palette
15+
- Added a dark mode toggle
16+
- Propagated dark mode to SPINE drawing
17+
- Configured Plotly PNG export for event displays
18+
- Hide the event display plot until an entry is loaded
19+
- Enable camera synchronization by default in split-scene view
20+
21+
### Fixed
22+
- Keep dropdown menus and virtualized dropdown options in the active dark theme
23+
- Apply dark theme styling to Dash 4 dropdown menus
24+
- Keep entry/run input layout stable when switching input modes
25+
- Replace native number widgets with numeric text inputs to avoid browser rendering artifacts in dark mode
26+
727
## [0.3.5] - 2026-05-08
828
### Changed
929
- Updated `spine` dependency to v0.10.13 exactly
@@ -57,8 +77,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5777
### Added
5878
- Add "Public" login option to access public datasets only
5979

60-
## [Unreleased]
61-
6280
## [0.2.1] - 2025-11-06
6381
### Added
6482
- Add logout button to allow one to change experiment directory

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ maintainers = [
1414
{name = "Francois Drielsma", email = "drielsma@stanford.edu"}
1515
]
1616
dependencies = [
17-
"spine[viz]==0.10.13",
18-
"dash>=4.0.0",
17+
"spine[viz]>=0.11.0",
18+
"dash>=4.1.0",
1919
"flask>=2.0.0",
2020
"flask-session>=0.5.0",
2121
"anywidget"

src/spinal_tap/app.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import hashlib
66
import os
77
import secrets
8+
from pathlib import Path
89

910
from dash import Dash
1011
from flask import Flask, redirect, request, session
@@ -184,8 +185,13 @@ def logout():
184185
# Initialize the Dash application with Flask server
185186
# suppress_callback_exceptions is needed because layout changes dynamically
186187
# based on authentication state
188+
asset_dir = Path(__file__).parent / "assets"
187189
app = Dash(
188-
__name__, server=server, title="Spinal Tap", suppress_callback_exceptions=True
190+
__name__,
191+
server=server,
192+
title="Spinal Tap",
193+
suppress_callback_exceptions=True,
194+
assets_folder=str(asset_dir),
189195
)
190196

191197
# Set the application layout (pass function for dynamic evaluation)

0 commit comments

Comments
 (0)