github BlueBubblesApp/bluebubbles-server v1.9.8-beta.1
BlueBubbles Server v1.9.8

pre-release2 months ago

What's New?

This is a fairly substantial update. It brings a handle of good QOL updates, as well as a ton of bug fixes and other small improvements. In addition, we now natively support Apple Silicon Macs! In addition, I've done some dependency cleanup, upgrading some backend libraries and removing others.

Warning / Note

Apple has flagged my Apple Developer account, which prevents me from signing the BlueBubbles Server with my developer certificate. As a result, you may need to "Allow" the app to run via your System Preference's Security & Privacy page. Alternatively, you can right click the app and select Open to directly open the app.

image

New Features

  • Support for message searching on macOS Ventura and newer via the Private API
  • Google Login to download contacts from your Google Account
    • This will not continuously sync your Google Contacts
  • Apple Silicon (ARM) Native Build! You can now run the BlueBubbles Server natively on an Apple Silicon Mac
    • This has not been extensively tested yet, but we figured we'd make it available
    • The Cloudflare (and maybe Ngrok & Zrok) daemon still will require Rosetta to run because they have not released Apple Silicon compatible builds yet
  • Ability to disable the automatic opening of the FindMy app on startup (see settings)
  • Settings toggle to allow auto-start as a Launch Agent to achieve crash-persistence
    • You must manually set the auto start method to Launch Agent
    • If the server crashes, it will automatically be restarted. If it closes normally (exit code 0), it will not be automatically restarted
  • Handles/Addresses are now obfuscated in the server log
  • New feature to automatically lock your Mac after login

Bug Fixes & Improvements

  • Fixes issues detecting, parsing, and emitting unsent messages
  • Fixes detection of delivered messages when sent from other Apple devices
  • Replaces automatic update service with a more manual update process
  • Adds warning next to your Server URL on the dashboard if it's using an insecure connection (HTTP) and a non-local address.
    • The warning basically explains that the connection is insecure and may be vulnerable to a man in the middle attack.
  • Increases send timeout time from 30 seconds to 1 minute to prevent unnecessary send errors
  • Fixes issue where images converted from HEIC would get a double-extension
  • Fixes issue detecting live photos for converted HEIC images
  • Start Delay now will only be applied when the Mac uptime is < 5 minutes
  • Improved error handling for Cloudflare proxy service
  • Fixes issue where a new Server URL on server startup would not get dispatched to Firebase
  • Fixes attachment de-duplication issue causing a visual bug where the wrong image would be displayed for an older image
    • This fix only applies to all future sent attachments and will not fix older bugged attachments
    • Also fixes an issue where old images would appear wrong after clearing the attachment cache
  • Fixes bug with sending text + attachments using the multipart endpoint
  • Error and Warning logs are now colored red and orange, respectively
  • Improvements & fixes to the OAuth Firebase setup process
  • Fixes alignment of the trash & edit icons for webhook table entries
  • Removes "Beta" tag for the Zrok Proxy Service
  • Adds "warning" next to the server URL on the dashboard when the connection may be insecure (i.e. dynamic DNS over HTTP)
  • Fixes API error message when a 500 error is thrown
  • A slightly improved icon to follow macOS design better

Developers

  • Adds validation to the "addresses" field for the POST /api/v1/contact/query API
  • Migrated away from using the zx library to execute CLI commands in favor of a custom purpose-built executor.
    • This also fixes an issue with orphaned cloudflared processes (and possible memory leak)
  • Removes yarn support due to build issues
  • Bumps NodeJS version to v20.11
  • Fixes all fixable vulnerabilities in dependencies
  • Tons of development package upgrades & dependency fixes
    • TypeScript
    • ESLint
    • Electron
    • Much More...
  • Upgrades Cloudflared binary to latest version
  • Webhook error logs are now debug level
  • BREAKING: The POST /api/v1/attachment/upload endpoint now returns path rather than hash

Useful Links

Clients

Enjoy!

P.S. If you are on Cloudflare, expect a disconnect status when the server first starts. To fix it, either disconnect from WiFi or flush your DNS cache on WiFi. If you use the Detect Localhost Address option, this can be mitigated while on your home network.

Don't miss a new bluebubbles-server release

NewReleases is sending notifications on new releases.