[PR #179] [MERGED] Pluggable events system + random fixes and improvements #240

Closed
opened 2026-02-28 14:26:22 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/devgianlu/go-librespot/pull/179
Author: @devgianlu
Created: 3/30/2025
Status: Merged
Merged: 3/30/2025
Merged by: @devgianlu

Base: masterHead: events


📝 Commits (10+)

  • 6ce19e4 feat: set content-type header on spclient requests
  • bd0e1b7 chore: ignore buf PACKAGE_VERSION_SUFFIX rule
  • 37fcf87 chore: regenerate all protos
  • d788d56 refactor: move client version to package const
  • 378d9cf refactor: move app state to own struct
  • 319c981 feat: add net-fortune and gabo-receiver-service requests to Spclient
  • c683d17 feat: track session and playback IDs
  • 89d952a feat: introduce pluggable event manager
  • 496576a chore: refactor player events
  • be1b21e refactor: expose GetFormatBitrate

📊 Changes

52 files changed (+25228 additions, -1643 deletions)

View changed files

📝 ap/ap.go (+1 -1)
📝 audio/chunked_reader.go (+98 -2)
audio/latency.go (+31 -0)
📝 audio/provider.go (+3 -0)
📝 buf.yaml (+4 -1)
📝 cmd/daemon/api_server.go (+1 -0)
📝 cmd/daemon/controls.go (+55 -4)
📝 cmd/daemon/main.go (+16 -93)
📝 cmd/daemon/player.go (+11 -0)
events/.gitignore (+1 -0)
events/dummy.go (+68 -0)
events/impl.go (+10 -0)
events/plugin/interface.go (+12 -0)
mercury/client.go (+217 -0)
📝 player/events.go (+30 -3)
📝 player/format.go (+2 -2)
📝 player/player.go (+26 -10)
📝 player/stream.go (+2 -0)
📝 proto/spotify/authentication.pb.go (+80 -95)
📝 proto/spotify/clienttoken/data/v0/connectivity.pb.go (+73 -71)

...and 32 more files

📄 Description

No description provided


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/devgianlu/go-librespot/pull/179 **Author:** [@devgianlu](https://github.com/devgianlu) **Created:** 3/30/2025 **Status:** ✅ Merged **Merged:** 3/30/2025 **Merged by:** [@devgianlu](https://github.com/devgianlu) **Base:** `master` ← **Head:** `events` --- ### 📝 Commits (10+) - [`6ce19e4`](https://github.com/devgianlu/go-librespot/commit/6ce19e48f584e8eb1005214ff500919ae7941d58) feat: set content-type header on spclient requests - [`bd0e1b7`](https://github.com/devgianlu/go-librespot/commit/bd0e1b740adcb9ef95259107ebe1f246b776d3c8) chore: ignore buf PACKAGE_VERSION_SUFFIX rule - [`37fcf87`](https://github.com/devgianlu/go-librespot/commit/37fcf8771748ad905c2f4fa40ae8d987e600cfde) chore: regenerate all protos - [`d788d56`](https://github.com/devgianlu/go-librespot/commit/d788d568210887e7b431b1fad30c5bb0bc78592e) refactor: move client version to package const - [`378d9cf`](https://github.com/devgianlu/go-librespot/commit/378d9cfc45a60fbd70afb6b373b1cb3f9d81d56e) refactor: move app state to own struct - [`319c981`](https://github.com/devgianlu/go-librespot/commit/319c9810bf75b16439b45bd8827ce56a8c4d1855) feat: add net-fortune and gabo-receiver-service requests to Spclient - [`c683d17`](https://github.com/devgianlu/go-librespot/commit/c683d174e22b144d50844c54ac86c1e26583740b) feat: track session and playback IDs - [`89d952a`](https://github.com/devgianlu/go-librespot/commit/89d952aca68efe863f52631fb387b9617bae183d) feat: introduce pluggable event manager - [`496576a`](https://github.com/devgianlu/go-librespot/commit/496576acf1cd4cc1e6b9fb042fa3f5cadee123b9) chore: refactor player events - [`be1b21e`](https://github.com/devgianlu/go-librespot/commit/be1b21e28326f6b9eef03410a40a65fe6808943b) refactor: expose GetFormatBitrate ### 📊 Changes **52 files changed** (+25228 additions, -1643 deletions) <details> <summary>View changed files</summary> 📝 `ap/ap.go` (+1 -1) 📝 `audio/chunked_reader.go` (+98 -2) ➕ `audio/latency.go` (+31 -0) 📝 `audio/provider.go` (+3 -0) 📝 `buf.yaml` (+4 -1) 📝 `cmd/daemon/api_server.go` (+1 -0) 📝 `cmd/daemon/controls.go` (+55 -4) 📝 `cmd/daemon/main.go` (+16 -93) 📝 `cmd/daemon/player.go` (+11 -0) ➕ `events/.gitignore` (+1 -0) ➕ `events/dummy.go` (+68 -0) ➕ `events/impl.go` (+10 -0) ➕ `events/plugin/interface.go` (+12 -0) ➕ `mercury/client.go` (+217 -0) 📝 `player/events.go` (+30 -3) 📝 `player/format.go` (+2 -2) 📝 `player/player.go` (+26 -10) 📝 `player/stream.go` (+2 -0) 📝 `proto/spotify/authentication.pb.go` (+80 -95) 📝 `proto/spotify/clienttoken/data/v0/connectivity.pb.go` (+73 -71) _...and 32 more files_ </details> ### 📄 Description _No description provided_ --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-28 14:26:22 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/go-librespot#240
No description provided.