Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • funkwhale funkwhale
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 379
    • Issues 379
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 20
    • Merge requests 20
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • funkwhalefunkwhale
  • 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
Reviewers
Request review from
Time tracking
Source branch: listenbrainz-plugin