Changelog

All notable changes to SynthesisDeck. The project follows Semantic Versioning.

v0.4.6latestFeb 28 2026
Changed
  • Removed legacy Makefile-based projects (superseded by examples/)
  • Retired Python CLI toolchain — VS Code extension is now the sole interface
  • Updated root Makefile: dropped py-lint, py-test, py-build, py-publish targets
  • Simplified release target: Docker + Extension only
Improved
  • Revamped Marketplace README — all 15 commands now documented
  • Added Advanced Mode setting and .synthesisdeck/ workspace marker docs
  • Added Nexus & MachXO2 families to boards table
  • Added Installs badge to README
Removed
  • fpga_sandbox.egg-info/, synthesis_deck.egg-info/ (stale build artifacts)
  • vscode-extension/synthesis-deck-0.1.0.vsix (outdated package)
  • toolchain/, tests/, pyproject.toml (Python CLI sunset)
v0.4.5Feb 2026
Changed
  • Removed all remaining show() calls from buildProgressPanel.ts, extension.ts, setup.ts, buildAndProgram.ts
  • Output panel will never auto-open; no noise unless Advanced Mode is enabled
v0.4.4Feb 2026
Changed
  • Replaced all runInTerminal() calls in toolchainService.ts with runInBackground()
  • Used child_process.exec + vscode.window.withProgress for background execution
  • Build, simulate, generatePll, clean — all headless; no terminal window
  • Only boardService.installProgrammer() still uses terminal (requires sudo)
  • Removed dead terminal imports from extension.ts
v0.4.3Feb 2026
Added
  • synthesisDeck.advancedMode setting (default: false)
  • log() gated to only write when Advanced Mode is ON
  • show() gated to only open Output panel when Advanced Mode is ON
  • logError() always writes regardless of mode
v0.4.2Feb 2026
Added
  • .synthesisdeck/ workspace marker directory — extension activates only when marker exists alongside fpga-project.toml
  • workspaceService.ts with static methods: init(), exists(), findInWorkspace(), readData(), writeData()
  • Migration prompt for legacy projects detected without the marker
  • File watcher for .synthesisdeck/workspace.json
  • workspaceContains:**/.synthesisdeck/workspace.json activation event in package.json
v0.4.1Feb 2026
Fixed
  • Build Progress Panel not appearing reliably — HTML now set before preflight check
  • Panel now opens in ViewColumn.Beside to avoid covering source files
  • Removed redundant show() calls that caused double-open flicker
v0.4.0Feb 2026
Added
  • Build Progress Panel — cyberpunk-themed real-time GUI for synthesis pipeline
  • Stage-by-stage progress (Synthesis → Place & Route → Pack → Program)
  • Visual indicators for pass/fail per stage
  • Scroll-synchronized build log inside the panel
v0.3.7Jan 2026
Fixed
  • Build vs program error now clearly separated — bitstream existence check added
  • Program command fails early with actionable message if build hasn't run
v0.1.0initialFeb 26 2025
Added
  • Docker toolchain — Ubuntu 22.04 image with oss-cad-suite (Yosys, GHDL, nextpnr, openFPGALoader)
  • Python build orchestrator — synthesis-deck CLI with build, sim, program, init, pll, clean, info
  • TOML-based configuration — fpga-project.toml with full validation
  • FPGA families — iCE40, ECP5, Gowin support with PLL generation
  • Board presets — iCEstick, iCEBreaker, TinyFPGA BX, ULX3S, OrangeCrab, Tang Nano 9K
  • Project templates — blank, led_blink, counter, uart
  • Example projects — 8 migrated legacy projects
  • VS Code extension — Build/program/simulate commands, TOML detection, diagnostics, status bar, project tree, snippets, PCF syntax