Package Details: spotdl 4.2.10-1

Git Clone URL: https://aur.archlinux.org/spotdl.git (read-only, click to copy)
Package Base: spotdl
Description: Download your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found).
Upstream URL: https://github.com/spotDL/spotify-downloader
Keywords: download-music mp3 music playlists song song-lyrics spotify youtube-music
Licenses: MIT
Conflicts: python-spotdl
Provides: python-spotdl
Replaces: python-spotdl
Submitter: zoorat
Maintainer: zoorat (pekkarr, aminvakil)
Last Packager: aminvakil
Votes: 25
Popularity: 0.92
First Submitted: 2024-03-31 19:44 (UTC)
Last Updated: 2024-11-19 09:05 (UTC)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 .. 9 Next › Last »

gesh commented on 2024-04-15 16:29 (UTC)

Just spotted that building in a clean chroot changed the checksum in .SRCINFO:

$ git diff
diff --git a/.SRCINFO b/.SRCINFO
index 9b9167d..6546eb4 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -38,6 +38,6 @@ pkgbase = spotdl
        conflicts = python-spotdl
        replaces = python-spotdl
        source = spotdl-4.2.5.tar.gz::https://github.com/spotDL/spotify-downloader/archive/v4.2.5.tar.gz
-       b2sums = e7b1ba0c7bebceb0d78ea0b4974b7a2a46612f03a3b3e457f8f996d68b9b23df0c199448956ad5f4398effbe5d59d51c43c310f998a8d4798d07bb89f6c51a5d
+       b2sums = cb45720745936cb4e14fb121e34871614e5be4bdc10f0c23058f979dfd788dd7da06ceb3cc633c93fb7bf799080256f718e29f8ff30fba275be9c6c3f9eae2ca

 pkgname = spotdl

Did you perhaps forget to update the .SRCINFO after updating checksums?

gesh commented on 2024-04-01 13:31 (UTC) (edited on 2024-04-01 14:25 (UTC) by gesh)

Retried building, works in clean chroot. Judging by errors, am guessing the tests aren't XDG-adapted, pinging this upstream. EDIT: Confirmed by playing around with the tests: https://github.com/spotDL/spotify-downloader/issues/2058. Workaround for now: any of

  • Ignore the test failure
  • Disable this particular test using pytest -v not test_config
  • Build in a clean chroot
  • Move $XDG_DATA_HOME/spotdl out of the way during build

In re masking test errors, sure, it's up to the user to do the right thing, but given --nocheck exists, I'd rather just targetedly disable the known-failing test, eg as pytest -v 'not test_config'.

Decision re git history is up to you.

zoorat commented on 2024-04-01 11:08 (UTC)

@gesh please check your env because i built and tested every package before publishing. and I don't think its necessary to keep the history.

xiota commented on 2024-04-01 10:53 (UTC) (edited on 2024-04-01 11:17 (UTC) by xiota)

@gesh All tests pass when I built this.

|| echo ... to allow packaging to complete is acceptable. User responsibility to review output.

gesh commented on 2024-04-01 10:39 (UTC) (edited on 2024-04-01 10:41 (UTC) by gesh)

tests/utils/test_config.py tests fail. Also, by running them with || echo, you're masking the test failures, so the package installs despite test failures.

Finally, it's a shame that this package loses the git history of python-spotdl. If you feel like recovering that history, add a python-spotdl branch pointing to the old python-spotdl/master and git merge --allow-unrelated-histories -Xours python-spotdl to merge them.

zoorat commented on 2024-03-31 21:42 (UTC)

@pekkarr thanks a lot for the help

pekkarr commented on 2024-03-31 20:21 (UTC)

files.pythonhosted.org is just an alternative URL for downloading PyPI sdists. The files are exactly the same as those downloaded from pypi.io. The Python package guidelines list those URLs, but there's a "Note: With RFC0020 the default is to use upstream provided source tarballs, instead of PyPI provided sdist tarballs". So getting the source from Github would be better (with renaming the source file as in the previous comment).

Another minor issue is that $pkgname should not be in provides, as every package implicitly provides itself.

Otherwise the spotdl package looks good.

zoorat commented on 2024-03-31 19:48 (UTC)

@pekkarr i was thinking about @gesh 's suggestion and used files.pythonhosted.org from https://wiki.archlinux.org/title/Python_package_guidelines

i uploaded those to https://aur.archlinux.org/packages/spotdl.

can you please check that out

pekkarr commented on 2024-03-31 19:25 (UTC)

@zoorat Thanks! Could you also prefix the source tarball with $pkgname as @gesh suggested? Arch package guidelines say that sources have to be unique. The PKGBUILD wiki page explains why this is needed. For example, the source variable could be defined as

source=("$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz")

zoorat commented on 2024-03-31 19:06 (UTC)

@pekkarr i didn't know about this pypi situation. i am updating it now.