Skip to content

Releases: jhalter/mobius

v0.22.0

12 Jun 16:03

Choose a tag to compare

Changelog

  • 4912c3a Add Reloader interface to remove type assertions from reload path
  • c15f851 Fix data races on ClientConn state, banner reload, and rate limiter growth
  • 7ebc802 Replace shared outbox with per-client send queues
  • b2c462a Shut down gracefully instead of exiting from library code
  • d2791fc Split transaction handlers and tests into domain files

v0.21.2

01 Jun 18:59

Choose a tag to compare

Release Notes

This release includes important edge case/reliability tweaks and small quality of life tweaks to the logging.

Changelog

  • 92f4b7a Extract shared readFrom helper to deduplicate io.Reader boilerplate
  • 21cf501 Guard against panics from unchecked type assertions
  • c42c103 Improve startup logging and logging consistency
  • 2f46f87 Improve test coverage for hotline and internal/mobius packages
  • 30db583 Normalize folder upload item paths and consolidate path handling
  • b772019 Refactor Stats to typed keys and fix peak-tracking race
  • 588dce9 Surface transaction handler errors instead of silently discarding them
  • 123d1a3 Validate client input to prevent panics from malformed transactions

v0.21.0

16 Mar 00:29

Choose a tag to compare

New Feature

Server config option to specify UTF8 instead of MacRoman text encoding.

For context and details see: text-encoding.md

Fixes #131

Changelog

  • f78ab94 Add configurable text encoding for file and folder names

v0.20.2

15 Mar 01:00

Choose a tag to compare

Fixes and error handing improvements 😴

Changelog

  • 0003a09 Clean up transaction handler doc comments
  • c152c28 Convert Hotline Protocol doc to Markdown
  • 72c6ddc Fix Mac Roman decoding incorrectly applied to filesystem root paths
  • b40b4cc Fix error handling and write-ordering anti-patterns
  • 3c469bc Fix markdown table widths
  • 3cf1a74 Fix panic when posting article to empty news category
  • bf27244 Fix race conditions, memory leak, and goroutine leak in Client
  • 472ec35 Improve error handling, logging, and fix race condition in Disconnect
  • 2cf9f33 Refactor ban management behind BanMgr interface
  • e4bdf40 Remove client from homebrew release action

v0.20.1

01 Dec 00:26

Choose a tag to compare

Change Notes

This release is primarily in support of Hotline client functionality, but does add support to the server for sending TLS port as part of tracker registration.

Changelog

  • 8ddb9bb Add TLS port field to tracker registration protocol
  • d3ea595 Add helper methods for hotline.Time conversion
  • ab16c7d Fix tracker server list parsing for batched responses
  • 1f57170 Mobius client library quality of life improvements
  • f96e805 Ran goimports -w . to tidy up
  • 6dae50a Remove debugging output

v0.20.0

23 Nov 03:47

Choose a tag to compare

New Feature

Mobius now supports TLS (Transport Layer Security) for encrypted connections between clients and the server. When enabled, TLS runs on separate ports alongside the standard unencrypted ports, allowing both secure and legacy client connections simultaneously.

For setup details, refer to: tls.md

Changelog

  • 357baa9 Add optional TLS support for encrypted client connections

v0.19.1

21 Nov 04:01

Choose a tag to compare

Changelog

  • 86a783d Bump go version to 1.25.4
  • 1b2df8a Fix error when downloading incomplete files
  • b395859 Rename hotline.fileWrapper struct to hotline.File
  • 489e26d Replace hardcoded magic values with named constants and improve type safety
  • ecae9f7 Update BannerFile doc comment in default config.yaml
  • 8686ff9 Update dependencies

v0.19.0

19 Nov 03:56

Choose a tag to compare

Changelog

  • e61b316 Add ForkType type alias for improved type safety
  • 1f3e5ec Add comprehensive test coverage for News and improve error handling
  • b6bca2b Add comprehensive test coverage for news.go functions
  • 16f0a85 Add support for GIF banners with validation and improved error messages
  • c0ec79d Fix TestHandleSetClientUserInfo test expectations
  • cab4e21 Fix string splitting bug and add comprehensive tracker registration tests
  • 331edfa Update Docker image reference in README

v0.18.4

05 Jul 04:33

Choose a tag to compare

Changelog

  • f00eb8b Add comprehensive API documentation and improve code documentation
  • 9e19aa6 Add comprehensive test coverage for AccessBitmap YAML marshaling
  • 4f8ec72 Add comprehensive test coverage for Stats and fix decrement edge case
  • 262f663 Add documentation and comprehensive test coverage for AccountManager
  • 437415c Add type safety to field system with FieldType alias
  • 4a0c7c3 Extract hardcoded error strings into comprehensive public constants
  • d2e125b Fix IPv6 address parsing in IP extraction
  • ee6629a Fix file handle close warnings by ignoring return values
  • aeb9208 Fix tests modifying test fixture files by using temporary directories
  • 043e270 Improve error handling consistency in main.go
  • 9b6866c Merge branch 'feature/extract-error-constants'
  • 2bef32a Refactor access bitmap unmarshal logic to use map-driven approach
  • a9c6485 Replace inappropriate panic calls with proper error handling
  • 023203c Standardize IP extraction using net.SplitHostPort

v0.18.3

29 Jun 00:45

Choose a tag to compare

Changelog

  • 123567e Update Homebrew workflow to also update URL field