Skip to content

Releases: fizzi01/Perpetua

v1.2.4

18 Feb 16:43
9dc2a3a

Choose a tag to compare

1.2.4 (2026-02-18)

Bug Fixes

  • daemon: ensure graceful shutdown (f1ff45f)
  • gui: adjust splash-screen border-radius on Windows (#45) (9a1e8e1)
  • improve cpu usage and streams performance (#43) (f1ff45f)
  • launcher: fix launcher behaviour (f1ff45f)

v1.2.3

17 Feb 22:16
555200d

Choose a tag to compare

1.2.3 (2026-02-17)

Bug Fixes

  • build: update macOS app bundle configuration (781d097)
  • improve macOS dock icon suppression logic (781d097)
  • unhandle mdns service exception, general errors logging improvements (#39) (781d097)

v1.2.2

16 Feb 18:01
1cde865

Choose a tag to compare

1.2.2 (2026-02-16)

Bug Fixes

  • extend mouse control to higher polling rates and improve double-click (#34) (06029f3)
  • gui: removed client hostname info when connected (#38) (517be4d)
  • mouse: fix sticky cursor when dragging (3462bc9)
  • network: improve performance in receive and send data (#37) (3462bc9)

v1.2.1

13 Feb 13:24
b296b64

Choose a tag to compare

1.2.1 (2026-02-13)

Bug Fixes

  • mouse: optimize and fix edge crossing (#31) (c776755)
  • overall mouse control performance boost and improvement (#33) (17e544c)

Documentation

  • update README for clarity and improved structure (0f07e6c)

v1.2.0

12 Feb 14:53
d0803b4

Choose a tag to compare

1.2.0 (2026-02-12)

Features

  • build: avoid useless file copies (0f3a417)
  • connection: implement exponential backoff for client connection retry logic (bd3665a)
  • cursor: add previous app focus restore on Windows (bd3665a)
  • gui: enhance tray icon behaviour (#28) (73cd4ec)
  • gui: switch tray icon based on connection state on macOS (30f5993)
  • keyboard: enhance Caps Lock state management (30f5993)
  • mouse: improve screen crossing by preventing crossing while mouse main buttons are being pressed (#23) (7ef2cfa)
  • optimize startup performance and behaviour (#27) (1d9b0c1)
  • replace json with msgspec for improved performance in encoding/decoding (1c6d249)

Bug Fixes

  • connection: cap error count to prevent overflow (bd3665a)
  • cursor: old focused app not getting focus again on macOS (bd3665a)
  • gui: update color variables for improved theming in log viewer (13c28b8)
  • inconsistent dock behaviour on macOS (c8f2f02)
  • keyboard: keyboard events not being suppressed when caps lock is active on macOS (30f5993)
  • mouse: clamp cursor position to screen bounds (#25) (30f5993)
  • mouse: hide dock icon on macOS when accessing controller position (ad5b6e2)
  • mouse: reduce double-click detection time from 200 to 100ms (7ef2cfa)
  • network: missing target reassignment when sending messages in multicast (1c6d249)
  • some imports led to missing modules in nuitka build, wrong method signature (49b5c4b)
  • suppress extra dock icon when client connects on macOS (30f5993)
  • unwanted previous app focus on start/stop server (macOS) (9949ab1)

Documentation

  • add tip in Usage section (da90fb2)

v1.1.0

05 Feb 16:20
9e6e3b0

Choose a tag to compare

1.1.0 (2026-02-05)

Features

  • gui: improve startup handling, implement splash screen, improve internal app state (#16) (ff2abfb)

Bug Fixes

  • daemon: unhandled exceptions when closing streams (ff2abfb)
  • gui: adjust window shadow and titlebar z-index on Windows, fixed splash-screen border radius (#19) (0791728)
  • gui: fix app unsync on startup (ff2abfb)
  • gui: fix critical error by ensuring shutdown command dispatch only if connected (30f32b1)
  • gui: fixed wrong rendering on macos and missing rounded corners on splashscreen (#18) (30f32b1)
  • protocol: handle None case for single chunk in reconstruct_from_chunks (#20) (05f72b4)

Documentation

  • add development setup instructions, minor changes (868d38e)
  • fix formatting of note in development instructions (42801fd)

v1.0.0

03 Feb 09:22
04ad234

Choose a tag to compare

The previous project state was inadequate due to severe performance degradation and problems. A solution was found in writing concurrent code that leverages asyncio and high-performance event loops, such as uvloop (or winloop). This choice led to a substantial performance increase compared to the old multithreaded architecture.

Additionally, Tauri framework has been chosen to build the GUI. The reason behind this is simply to conduct a fun experiment in learning Rust and having fun with React. The whole project is a "hobby" project.

Features

  • Complete project restructure and rework (#14) (fizzi01)

Documentation

  • Update README with usage instructions, configuration details, and new images (fizzi01)