The beets ebuild is in a poor state and needs a rewrite. That process, however, will be non-trivial. A few of the needed packages are not in the tree and will need to be added. This bug will work as a tracker for this issue so I can link the dependent ones.
Hey, I have been working on this ebuild + 9999, it is a lot cleaner and has tests. Please send reviews.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3b599ad6587752063fd42e3b9c7fed33771d494e commit 3b599ad6587752063fd42e3b9c7fed33771d494e Author: Guillaume Seren <guillaumeseren@gmail.com> AuthorDate: 2020-04-25 17:31:10 +0000 Commit: Joonas Niilola <juippis@gentoo.org> CommitDate: 2020-06-01 12:28:16 +0000 media-sound/beets: cleanup ebuild Closes: https://bugs.gentoo.org/718398 Bug: https://bugs.gentoo.org/702914 Bug: https://bugs.gentoo.org/693164 Closes: https://bugs.gentoo.org/584276 Signed-off-by: Guillaume Seren <guillaumeseren@gmail.com> Signed-off-by: Joonas Niilola <juippis@gentoo.org> media-sound/beets/beets-1.4.9-r1.ebuild | 179 +++++++++++++++++++------------- 1 file changed, 107 insertions(+), 72 deletions(-)
The way I see it, this ebuild does some weird file removals based on USE flags. I don't think that's very wise. I understand the removal IF: 1) deps are not available, 2) functionality requires massive amounts of deps. Let's start discussion how to make beets better.
Hey Juippis, (In reply to Joonas Niilola from comment #3) > The way I see it, this ebuild does some weird file removals based on USE > flags. I don't think that's very wise. I understand the removal IF: > 1) deps are not available, > 2) functionality requires massive amounts of deps. Yes tests was restricted before, and I was aiming to have at least some of them working. On the case I noted 4 cases: * Depend on USE flags and can be activated * Depend on missing deps and can not be activated now * Need network usage to run the test * Test are not working and dropped in master > Let's start discussion how to make beets better. Maybe (probably :) I miss something, but as I unterstand it, we need to remove the tests that need network because network, is not available in the test phase, for security reason. I am working on cleaning those test condition
I have pushed a PR branch with the following fixes: * cleanup + bump dev-python/cors-{3.0.8,9999} * drop PMASK for media-sound/beets webserver * add conditionnal on dev-python/cors for beets behind a new use flags 'cors'
Hey, thank's to the detailled review of mgorny, I have fixed and upgraded my branch: * beets: Cleanup / Sort the RDEPEND / DEPEND / BDEPEND. * beets: Drop the rm_use_plugin() and all module deletion. * beets: Cleanup the test deletion if statement. * beets: Add a patch to disable the failing test_completion. * beets: Fix beets bash-completion generation / install. * beets: Add the zsh completion install. * flask-cors: Cleanup deps into RDEPEND * flask-cors: Move the sphinx extension deps in the distutils call.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5369b341888433a3444dfe6bbe6d2b8dabf00d0b commit 5369b341888433a3444dfe6bbe6d2b8dabf00d0b Author: Guillaume Seren <guillaumeseren@gmail.com> AuthorDate: 2020-06-01 23:30:50 +0000 Commit: Joonas Niilola <juippis@gentoo.org> CommitDate: 2021-01-18 12:27:05 +0000 media-sound/beets: Drop old ebuild Closes: https://bugs.gentoo.org/693164 Signed-off-by: Guillaume Seren <guillaumeseren@gmail.com> Signed-off-by: Joonas Niilola <juippis@gentoo.org> media-sound/beets/beets-1.4.9-r2.ebuild | 172 -------------------------------- 1 file changed, 172 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5548eb37c36e798c008665d6ca82c215e04c4ca commit e5548eb37c36e798c008665d6ca82c215e04c4ca Author: Guillaume Seren <guillaumeseren@gmail.com> AuthorDate: 2020-09-29 16:15:40 +0000 Commit: Joonas Niilola <juippis@gentoo.org> CommitDate: 2021-01-18 12:27:05 +0000 media-sound/beets: Cleanup live-ebuild Closes: https://bugs.gentoo.org/693164 Signed-off-by: Guillaume Seren <guillaumeseren@gmail.com> Signed-off-by: Joonas Niilola <juippis@gentoo.org> media-sound/beets/beets-9999.ebuild | 140 ++++++++++++++++-------------------- 1 file changed, 63 insertions(+), 77 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=76a4fe776209a5c8282ac1e354b8d9bb1d81831e commit 76a4fe776209a5c8282ac1e354b8d9bb1d81831e Author: Guillaume Seren <guillaumeseren@gmail.com> AuthorDate: 2020-06-01 23:37:42 +0000 Commit: Joonas Niilola <juippis@gentoo.org> CommitDate: 2021-01-18 12:27:04 +0000 media-sound/beets: Fix tests + cors/audioread support Closes: https://bugs.gentoo.org/693164 Signed-off-by: Guillaume Seren <guillaumeseren@gmail.com> Signed-off-by: Joonas Niilola <juippis@gentoo.org> media-sound/beets/beets-1.4.9-r3.ebuild | 161 +++++++++++++++++++++ ...ty-with-breaking-changes-to-the-ast-modul.patch | 53 +++++++ .../files/1.4.9-0002-Disable-test_completion.patch | 74 ++++++++++ media-sound/beets/metadata.xml | 5 +- 4 files changed, 292 insertions(+), 1 deletion(-)
One question came into mind: Are the plugins optional in a sense even if the plugins are installed, but their deps are not, it wouldn't actually break the program? If we just install the plugin files, but move the deps under 'optfeature'?
Then, BDEPEND="doc? ( dev-python/sphinx )" can be replaced with "distutils_enable_sphinx", https://dev.gentoo.org/~mgorny/python-guide/distutils.html#building-documentation-via-sphinx
Hey Joonas, I did not known this eclass. I will look into it and test.
Hey, I've opened a bug to track the new changes needed: https://bugs.gentoo.org/766132