Skip to content

Fix Beets Versions and Move llvmlite to Dep Group#257

Merged
gtronset merged 3 commits into
mainfrom
gt-fix-llvmlite
Feb 8, 2026
Merged

Fix Beets Versions and Move llvmlite to Dep Group#257
gtronset merged 3 commits into
mainfrom
gt-fix-llvmlite

Conversation

@gtronset
Copy link
Copy Markdown
Owner

@gtronset gtronset commented Feb 8, 2026

Description

Addresses #256

Beets 2.6 installations via pip also attempt to install many of it's "optional" dependencies, including librosa, which notably requires numba and llvmlite (on many systems it's often a real pain to build wheels for). This even caused issues for the LSIO team and they opted to build Beets from source instead (see linuxserver/docker-beets#146 (comment) and linuxserver/docker-beets@cb16f63).

As a temporary fix, in v1.3.0 I originally added llvmlite as a required dep to overwrite settings and allow for successful dependency builds; however, this then conflicted with certain installs due to the above issue. Fundamentally, this is likely an upstream issue that needs to be properly addressed in Beets. In the meantime, I've moved the llvmlite specification to its own dependency group to properly make it optional, and have tweaked the Tox settings to allow for successful installation. In addition, the numpy specification was also removed as it should not be handled upstream.

This PR also fixes an error in the Beets allowed version for 1.3, which does indeed support Beets versions 2.4 and 2.5.

To Do

  • Documentation (update README.md)
  • Changelog (add an entry to CHANGELOG.md)
  • Tests

@gtronset gtronset requested a review from Copilot February 8, 2026 00:37
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adjusts dependency constraints/config to avoid Beets 2.6 pulling heavy “optional” deps, while making llvmlite truly optional via a Poetry dependency group.

Changes:

  • Updated the allowed beets version range in pyproject.toml.
  • Moved llvmlite into a dedicated Poetry dependency group and removed explicit numpy pinning.
  • Tweaked tox env installation behavior via PIP_ONLY_BINARY and added a changelog entry.

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 2 comments.

File Description
pyproject.toml Updates Beets version constraint, makes llvmlite an optional group dependency, and adjusts tox env vars for installation behavior.
CHANGELOG.md Documents the fix in the Unreleased section.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread pyproject.toml Outdated
Comment thread pyproject.toml
@gtronset gtronset requested a review from Copilot February 8, 2026 00:48
@gtronset gtronset marked this pull request as ready for review February 8, 2026 00:48
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 3 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread pyproject.toml
Comment thread pyproject.toml
Comment thread pyproject.toml
@gtronset gtronset merged commit db04675 into main Feb 8, 2026
16 checks passed
@gtronset gtronset deleted the gt-fix-llvmlite branch February 8, 2026 00:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants