Files
eco_os/changelog.md

6.2 KiB

Changelog

2026-01-10 - 0.4.15 - fix(isotest)

Improve robustness of SPICE display enabler: add logging, wait-for-port and URI parsing, retries and reconnection logic, stabilization delay before configuring, and verification/retry of monitor configuration

  • Add immediate-flush logging helper for clearer background output
  • Wait for SPICE TCP port (wait_for_port) and parse spice:// URIs before connecting
  • Add stabilization delay before sending monitor config and track retry counts
  • Add verify_and_retry to confirm configuration or retry up to configurable attempts
  • Detect agent disconnects (VM reboots) and keep running to reconfigure on reconnect; add reconnect and periodic health checks

2026-01-09 - 0.4.1 - fix(release-upload)

clear progress timer on upload completion/error and add periodic upload progress reporting

  • Clear the progress interval on response end and on stream/error to avoid leaking timers.
  • Track bytesWritten (header + stream chunks + footer) to compute accurate progress percentages.
  • Log upload progress (percent and MB) every 10 seconds for visibility.
  • Handle stream errors by clearing the progress timer and rejecting with the error.

2026-01-09 - 0.4.0 - feat(displays)

add display detection and management (sway) with daemon APIs and UI controls

  • Introduce DisplayInfo type in system-info.ts
  • Add ProcessManager methods: getDisplays, setDisplayEnabled, setKioskDisplay (invoke swaymsg via runuser)
  • Add daemon methods to expose getDisplays, setDisplayEnabled and setKioskDisplay with runtime/Wayland context and status checks
  • Add UI server endpoints: GET /api/displays and POST /api/displays/{name}/(enable|disable|primary) and frontend UI to list and control displays (polling + buttons)
  • Bump VERSION and package.json to 0.3.9

2026-01-09 - 0.3.8 - fix(ci(release-workflow))

use npx tsx to run release-upload.ts in the Gitea release workflow instead of installing tsx globally

  • Removed 'pnpm install -g tsx' to avoid global installs in CI
  • Replaced direct 'tsx' invocation with 'npx tsx' to run .gitea/release-upload.ts
  • Reduces CI image footprint and avoids unnecessary global package installation

2026-01-09 - 0.3.7 - fix(daemon)

Point updater at the correct repository API (code.foss.global ecobridge.xyz/eco_os) and bump project/daemon versions to 0.3.6

2026-01-09 - 0.3.5 - fix(ci)

add Gitea release asset uploader and switch release workflow to use it; bump package and daemon versions to 0.3.4

  • Add .gitea/release-upload.ts: streams assets to Gitea to avoid curl's 2GB multipart limit
  • Update CI workflow (.gitea/workflows/release.yml) to run the TypeScript uploader via tsx
  • Bump package.json and ecoos_daemon/ts/version.ts to 0.3.4
  • Update bundled eco-daemon binary in isobuild/config/includes.chroot/opt/eco/bin/

2026-01-09 - 0.3.2 - fix(release)

bump package and daemon to v0.3.1, add project README, and fix Gitea release upload flag

  • package.json version updated from 0.3.0 to 0.3.1
  • ecoos_daemon/ts/version.ts updated to export VERSION = "0.3.1"
  • Added comprehensive readme.md documenting the project, development and release workflow
  • Fix .gitea/workflows/release.yml: use curl -T for uploading release assets instead of --data-binary
  • Updated bundled eco-daemon binary in isobuild/config/includes.chroot/opt/eco/bin/ (new build artifact)

2026-01-09 - 0.3.0 - feat(daemon)

add automatic update mechanism (Updater), switch to system journal logs, and expose update controls in the UI

  • Introduce Updater class: fetches releases from Gitea, computes auto-upgrade eligibility, downloads daemon binary, replaces binary and restarts service.
  • Integrate updater into EcoDaemon: new methods getUpdateInfo, checkForUpdates, upgradeToVersion; run initial update check on startup and periodic auto-upgrade checks (hourly).
  • Replace serial console reader with a journalctl-based system journal reader; rename serialLogs → systemLogs and update related logic and limits.
  • UI/server: add API endpoints /api/updates, /api/updates/check and /api/upgrade; add an Updates panel to show current version, available releases, auto-upgrade status, and client-side actions to check and trigger upgrades; poll update info periodically.
  • Version bump to 0.2.2 (package.json and ecoos_daemon/ts/version.ts).
  • Build/workflow changes: release workflow now runs build step (Build ISO) and package.json build script adjusted for CI and updated Docker build/run handling.

2026-01-09 - 0.2.1 - fix(ci)

use GitHub Actions workspace for docker volume and add listing of build output directory for debugging

  • Replace $(pwd) with ${{ github.workspace }} in docker run volume mount to work correctly in GitHub Actions runner
  • Add ls -la .nogit/iso/ to list generated artifacts and aid debugging of release workflow

2026-01-09 - 0.2.0 - feat(daemon)

add serial console reader and UI tab for serial logs; add version propagation and CI/release workflows

  • Start a background serial reader that reads /dev/ttyS0, retains up to 1000 lines and exposes serial logs via the daemon API
  • Add a Serial Console tab in the management UI to view serial logs and a tab switcher; UI will auto-reload when daemon version changes
  • Expose VERSION from ecoos_daemon and include it in status responses
  • Bump package version to 0.1.3 and update daemon version constant
  • Add .gitea workflows for CI (typecheck + bundle) and Release (build daemon, build ISO via Docker, upload releases to Gitea), and add a daemon:typecheck npm script; update test/clean scripts

2026-01-09 - 0.1.1 - initial project setup & minor update

Consolidated initial project creation and a follow-up update into the initial release (0.1.1).

  • 2026-01-08: initial commit — project scaffold and first files added.
  • 2026-01-09: minor update and version bump to 0.1.1 — small edits and housekeeping.