Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • funkwhale funkwhale
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 396
    • Issues 396
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 15
    • Merge requests 15
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • funkwhale
  • funkwhalefunkwhale
  • Merge requests
  • !1238

Added a ListenBrainz plugin

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Philipp Wolfer requested to merge phw/funkwhale:listenbrainz-plugin into develop Nov 20, 2020
  • Overview 2
  • Commits 2
  • Pipelines 2
  • Changes 6

Allows users to submit their listenings to ListenBrainz.org.

I have this running on my pod now without issues, happily submitting listens for me.

Maybe for discussion: The client.py I wrote originally for the Rhythmbox plugin (where it was derived and generalized from what I had originally written for the Lollypop player).

There is also the kind of official pylistenbrainz. It was written later, but it's code wise actually very similar, only that it supports more of the ListenBrainz endpoints while client.py focuses on the submission only. If you prefer using this we could add this library as an external dependency and replace client.py with that. The only relevant difference I could spot is that client.py automatically retries after delay on a 429 response (too many requests), but this could be easily added also when using pylistenbrainz.

No strong opinion here, it's just that I personally preferred using my own proven code I know best and that I wanted to avoid an external dependency for a rather simple thing.

Edited Nov 20, 2020 by Philipp Wolfer
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: listenbrainz-plugin