Repository navigation
Releases: phlx0/drift
Releases · phlx0/drift
Release list
v1.3.0
Added
exit_on_mouseoption in[engine]and matching--exit-on-mouseflag — restores the previous click-to-quit behavior for anyone who wants it
Changed
- mouse clicks no longer quit drift — any click used to exit immediately, so on window managers that deliver the focus click to the application it was impossible to switch to drift's terminal without dismissing it; mouse reporting is now off unless
exit_on_mouse = trueis set in[engine]or--exit-on-mouseis passed, which also leaves the terminal's own text selection and scrollback usable while drift runs (#59)
v1.2.0
Added
- bonsai scene — a procedural bonsai grows out of a shallow pot: root flare, S-curved trunk tapering 3 cells wide to 1, primary branches leaving almost horizontally into flat foliage pads, and blossoms drifting down while the finished tree is held before it dissolves and regrows; configurable
pause_seconds,fade_secondsandspeed
v1.1.0
Added
- boids scene — Reynolds flocking simulation; triangle-arrow heads with fading trails, three steering rules (separation, alignment, cohesion); configurable
countandspeed - plasma scene — classic demoscene sine-sum color field; four overlapping waves with a drifting radial center; density characters (
░▒▓█) layer depth; configurablespeedandscale engine.oled_shiftconfig flag (defaultfalse) — OLED pixel-shift now opt-in instead of always active
Changed
- dvd base speed raised from 10 → 16 cells/s (vy 5 → 8); crosses a new cell boundary roughly every 2 frames at 30 fps for noticeably smoother motion; tune back with
speed = 0.65
Fixed
- dvd bounce now reflects the overshoot (
2·maxX − x) instead of clamping to the wall; eliminates the one-frame "stick" before reversing direction - dvd double velocity-flip on tiny terminals: when the logo is wider/taller than the available space, velocity is zeroed instead of being flipped twice (which left the logo oscillating in place)
- plasma spatial frequency doubled (base multiplier 6 → 12); blobs are now small enough relative to the terminal that edges cut through the middle of a pattern instead of at a band boundary
- Scene name matching is now case-insensitive (
--scene Rainworks, not just--scene rain) - Unknown scene names in
--scene/ config now print a warning to stderr instead of silently falling back to all scenes
v1.0.1
fix(release): add [1.0.0] changelog section and Formula directory for tap
v1.0.0
v0.11.0
Added
- custom themes — define your own themes in
config.tomlunder[theme.<name>]using#RRGGBBhex colors; custom themes appear indrift list themesand showcase mode alongside built-ins; custom themes with the same name as a built-in override it - dvd scene — the classic bouncing logo; a rounded box drifts around the terminal, changing palette color on each wall bounce and flashing bright on a corner hit; configurable via
[scene.dvd]:speed,label - scene transitions — a smooth fade-to-black between scene switches; duration controlled by
engine.fade_seconds(default0.3s per phase,0= instant cut); applies to both automatic cycling and showcase navigation - config validation —
Load()now rejects out-of-range values for all numeric config fields with a clear multi-line error listing every invalid field - config validation —
scene.waveform.layersmust be 1–3;scene.particles.frictionmust be 0.0–1.0 - shell snippet tests — unit tests covering
shellSnippet()for all supported shells and unsupported-shell error paths - scene unit tests — test coverage for all 9 scenes:
waveform,rain,constellation,life,maze,pipes,clock,starfield,particles
Fixed
- orrery scene — terminal resize no longer resets the RNG to the same seed used at init, preventing repetitive asteroid and UFO spawn patterns after resize events
v0.10.0
Added
- starfield scene — classic 3-D star warp; stars spawn near the centre, accelerate toward the viewer and fan out to the edges; close stars flash bright and leave a one-cell trail; configurable via
[scene.starfield]:count,speed
Changed
- scene package structure — each scene now lives in its own subdirectory and Go package (
internal/scene/rain,internal/scene/orrery, etc.); the orrery is split acrossorrery.go,bodies.go,effects.go, andrender.go; scene registration moved to a newinternal/scenespackage to avoid circular imports - contributing guide and PR template updated to reflect the new scene package structure and registration steps
v0.9.0
Added
- orrery scene — a stylized solar system with a fixed sun, eight planets, and concentric orbit rings; configurable via
[scene.orrery]:bodies,trail_decay - showcase quit keys —
qandctrl+cnow exit showcase mode in addition toesc, fixing terminals (e.g. Ghostty) that intercept the escape key (closes #34)
v0.8.2
Fixed
drift confignow clearly reports when the config file is missing (with a hint to rundrift config --init) and when it fails to parse (previously both cases silently used defaults with no indication)
v0.8.1
Fixed
drift versionnow shows the correct version, commit, and date when installed viago install— previously always showeddev / none / unknownbecause the binary had no ldflags applied