Skip to content

Releases: sbernauer/breakwater

0.18.1

02 May 19:56
aa74810

Choose a tag to compare

  • Fix wrong PXMULTI command handling introduced in #55 (#60).

0.18.0

25 Apr 15:29
21b6d5d

Choose a tag to compare

Added

  • Support using shared memory for the framebuffer.
    This enables other applications to read and write Pixel values of the framebuffer and can be used
    to persist the canvas across restarts (#55)

Changed

  • Bump to 2024 Rust edition (#52)
  • Replace snafu with eyre and thiserror for error handling (#53)
    • Use color-eyre for prettier error reports
  • Use tracing for logging (#54)

0.17.0

14 Feb 12:18
489c4fd

Choose a tag to compare

Added

  • Add a customizable multi-window native display using egui (#48)

Fixed

  • BREAKING: Count IPv4 and IPv6 statistics individually to avoid confusion.
    Because of this, the Prometheus metrics breakwater_ips and breakwater_legacy_ips have been removed,
    use breakwater_ips_v4 and breakwater_ips_v6 instead (#50)
  • Ensure statistic information updates are send periodically (#49)

0.16.3

11 Jan 20:33
08fcb25

Choose a tag to compare

Fixed

  • Receive buffers for pixelflut connections that were leaked before will now be properly deallocated (#46)
  • Errors while allocating receive buffers for pixelflut connections are now handled properly (#46)

0.16.2

30 Dec 08:49
fc61bba

Choose a tag to compare

Fixed

  • Ignore spurious zero-sized window buffers in native display sink (#42)
  • Use physical size for winit window in native display sink (#42)

0.16.1

02 Sep 06:55
fd63771

Choose a tag to compare

  • Fixed problem with docker build, which resulted in 0.16.0 to be missing on Docker Hub (#40)
  • Only offer the CLI arguments --vnc and --native-display when the corresponding features are enabled (#41)

0.16.0

19 Aug 06:45
a1e8e0e

Choose a tag to compare

Added

  • Added support for binary sync protocol behind the binary-sync-pixels feature (#34)
  • Added support for native display output (#38)

Changed

  • BREAKING: Feature binary-commands has been renamed to binary-set-pixel (#34)
  • BREAKING: Remove the breakwater-core crate (#37)
  • Add a FrameBuffer trait, rename the existing implementation one to SimpleFrameBuffer (#37)
  • Add a DisplaySink´trait, so that new sinks can be added more easily (#38)
  • BREAKING: No display sink is now started by default. To start the VNC server add the --vnc CLI argument (#38)

Fixed

  • Performance improvement due to addition of missing set of last_byte_parsed when sending binary pixel commands (#36)
  • Minor performance improvement when parsing HELP and SIZE requests (#36)

0.15.0

12 Jun 11:32
d53ffaa

Choose a tag to compare

Added

  • Support binary protocol (#33)
  • Try to improve performance by calling madvise to inform Kernel we are reading sequentially (#24)
  • Expose metric on denied connection counts (#26)
  • Print nicer error messages (#32)

Changed

  • Ignore repeated HELP requests (#25)
    • Only the first 2 requests of any parse patch are answered
    • Answers Stop spamming HELP! on the third request
    • Doesn't respond to any further requests

0.14.0

30 May 12:23
97fa223

Choose a tag to compare

Added

  • Command line option --connections-per-ip that allows limiting the number of connections per ip address. Default is unlimited (#22)

Fixed

  • Raise ffmpeg errors as early as possible, e.g. when the ffmpeg command is not found

0.13.0

15 May 19:05
24a0f21

Choose a tag to compare

Added

  • Also release binary for aarch64-apple-darwin (#22).

Changed

  • Second rewrite with the following improvements: (#21)
    • Put Parser behind a trait, so that we can have multiple implementation in parallel
    • Use cargo workspaces
    • Better error handling using snafu
  • BREAKING: Build release binaries without support for VNC, as this (#22)
    • Has a dependecy on a dynamically linked library on the host executing the binary
    • Needs a cross-compilation (which didn't work), as the macOS GitHub runners all run on arm and we try to build an x86 binary