Package Details: python-ytmusicapi 0.25.0-1

Git Clone URL: https://aur.archlinux.org/python-ytmusicapi.git (read-only, click to copy)
Package Base: python-ytmusicapi
Description: Unofficial API for YouTube Music
Upstream URL: https://github.com/sigma67/ytmusicapi
Licenses: MIT
Submitter: timschumi
Maintainer: pekkarr
Last Packager: pekkarr
Votes: 10
Popularity: 1.19
First Submitted: 2021-01-19 22:04 (UTC)
Last Updated: 2023-01-16 15:40 (UTC)

Latest Comments

mashkioya commented on 2022-10-24 17:05 (UTC) (edited on 2022-10-24 17:05 (UTC) by mashkioya)

@pekkarr Thank you, I was able to get it to build in a clean chroot. Here is the output you asked for, for your information:

[<_distutils_hack.DistutilsMetaFinder object at 0x7f8b4895f850>, <class '_frozen_importlib.BuiltinImporter'>, <class '_frozen_importlib.FrozenImporter'>, <class '_frozen_importlib_external.PathFinder'>]

pekkarr commented on 2022-10-23 11:19 (UTC)

Hi @mashkioya, could you post the output of running python -c "import sys; print(sys.meta_path)"?

You can also try building in a clean chroot.

My current hypothesis is that the error is caused by some third package adding its own MetaPathFinder to sys.meta_path that doesn't provide the _normalized_name attribute in its provided distributions. This may be related to this bug in python's importlib.

mashkioya commented on 2022-10-22 17:50 (UTC)

My python version is 3.10.8 and I have python-setuptools-1:63.4.2-1

Here is the full output from makepkg:

==> Making package: python-ytmusicapi 0.24.0-1 (2022년 10월 22일 (토) 오후 12시 48분 59초)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Downloading ytmusicapi-0.24.0.tar.gz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 57431  100 57431    0     0  93927      0 --:--:-- --:--:-- --:--:-- 93927
==> Validating source files with sha256sums...
    ytmusicapi-0.24.0.tar.gz ... Passed
==> Extracting sources...
  -> Extracting ytmusicapi-0.24.0.tar.gz with bsdtar
==> Starting prepare()...
==> Starting build()...
* Getting dependencies for wheel...
/usr/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py:114: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*.
  warnings.warn(msg, _BetaConfiguration)
validate_pyproject.api.load_builtin_plugin defines `tool.distutils` schema
validate_pyproject.api.load_builtin_plugin defines `tool.setuptools` schema
Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 351, in <module>
    main()
  File "/usr/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 333, in main
    json_out['return_val'] = hook(**hook_input['kwargs'])
  File "/usr/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 118, in get_requires_for_build_wheel
    return hook(config_settings)
  File "/usr/lib/python3.10/site-packages/setuptools/build_meta.py", line 177, in get_requires_for_build_wheel
    return self._get_build_requires(
  File "/usr/lib/python3.10/site-packages/setuptools/build_meta.py", line 159, in _get_build_requires
    self.run_setup()
  File "/usr/lib/python3.10/site-packages/setuptools/build_meta.py", line 174, in run_setup
    exec(code, locals())
  File "<string>", line 1, in <module>
  File "/usr/lib/python3.10/site-packages/setuptools/__init__.py", line 87, in setup
    return distutils.core.setup(**attrs)
  File "/usr/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 172, in setup
    ok = dist.parse_command_line()
  File "/usr/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 479, in parse_command_line
    args = self._parse_command_opts(parser, args)
  File "/usr/lib/python3.10/site-packages/setuptools/dist.py", line 1107, in _parse_command_opts
    nargs = _Distribution._parse_command_opts(self, parser, args)
  File "/usr/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 538, in _parse_command_opts
    cmd_class = self.get_command_class(command)
  File "/usr/lib/python3.10/site-packages/setuptools/dist.py", line 952, in get_command_class
    eps = metadata.entry_points(group='distutils.commands', name=command)
  File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 1009, in entry_points
    return SelectableGroups.load(eps).select(**params)
  File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 459, in load
    ordered = sorted(eps, key=by_group)
  File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 1006, in <genexpr>
    eps = itertools.chain.from_iterable(
  File "/usr/lib/python3.10/importlib/metadata/_itertools.py", line 16, in unique_everseen
    k = key(element)
AttributeError: 'PathDistribution' object has no attribute '_normalized_name'

ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel
==> ERROR: A failure occurred in build().
    Aborting...

Thanks for your help!

pekkarr commented on 2022-10-22 16:11 (UTC)

@mashkioya What version of python and python-setuptools are you using? Also could you post the full build output?

mashkioya commented on 2022-10-22 11:38 (UTC)

I am getting this error when attempting to build:

AttributeError: 'PathDistribution' object has no attribute '_normalized_name'

ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel
==> ERROR: A failure occurred in build().

timschumi commented on 2021-04-12 15:28 (UTC) (edited on 2021-04-12 15:59 (UTC) by timschumi)

@Freso

There is only a single LICENSE in here, so there is nothing to conflict on. At least that's how I understood "Sources have to be unique in srcdir".

EDIT: I just realized that $srcdir can be overwritten. This should really be made more clear in the packaging guidelines.

Freso commented on 2021-04-12 14:51 (UTC)

Please make sure to name "LICENSE" in a way unique to this package, to ensure it is unique/doesn’t clash with other packages’ source files. (See https://wiki.archlinux.org/index.php/Arch_package_guidelines#Package_sources )

As an example, I’ve used "$_name-$pkgver-LICENSE::https://github.com/lalinsky/mbdata/raw/v$pkgver/LICENSE" for python-mbdata: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=python-mbdata#n14