* [ISSUE] alot requires mailcap library which was removed in Python-3.13
@ 2025-01-23 4:20 Vinfall
2025-01-24 16:37 ` ahesford
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: Vinfall @ 2025-01-23 4:20 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 6025 bytes --]
New issue by Vinfall on void-packages repository
https://github.com/void-linux/void-packages/issues/54086
Description:
### Is this a new report?
Yes
### System Info
Void 6.12.10_1 x86_64 GenuineIntel uptodate rrFFFFFFFFFFFFFFFFF
### Package(s) Affected
alot-0.10_2
### Does a report exist for this bug with the project's home (upstream) and/or another distro?
Yes, reported as https://github.com/pazz/alot/issues/1632 and fixed in https://github.com/pazz/alot/pull/1684 (unreleased).
### Expected behaviour
Running `alot` successfully.
### Actual behaviour
```python
$ alot
Traceback (most recent call last):
File "/sbin/alot", line 33, in <module>
sys.exit(load_entry_point('alot==0.10', 'console_scripts', 'alot')())
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/sbin/alot", line 25, in importlib_load_entry_point
return next(matches).load()
~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/importlib/metadata/__init__.py", line 179, in load
module = import_module(match.group('module'))
File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 1026, in exec_module
File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
File "/usr/lib/python3.13/site-packages/alot/__main__.py", line 10, in <module>
from alot.settings.const import settings
File "/usr/lib/python3.13/site-packages/alot/settings/const.py", line 4, in <module>
from .manager import SettingsManager
File "/usr/lib/python3.13/site-packages/alot/settings/manager.py", line 7, in <module>
import mailcap
ModuleNotFoundError: No module named 'mailcap'
```
### Steps to reproduce
```sh
xi alot
alot
```
Possible solutions:
- Use upstream patch/Update alot to 0.12, did not work as the patch is not included and I can't even build it.
<details><summary>Build log</summary>
<p>
```sh
=> alot-0.11_1: running do_build ...
* Getting build dependencies for wheel...
Traceback (most recent call last):
File "/usr/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
main()
~~~~^^
File "/usr/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in main
json_out["return_val"] = hook(**hook_input["kwargs"])
~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 143, in get_requires_for_build_wheel
return hook(config_settings)
File "/usr/lib/python3.13/site-packages/setuptools/build_meta.py", line 334, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=[])
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools/build_meta.py", line 304, in _get_build_requires
self.run_setup()
~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/site-packages/setuptools/build_meta.py", line 320, in run_setup
exec(code, locals())
~~~~^^^^^^^^^^^^^^^^
File "<string>", line 1, in <module>
File "/usr/lib/python3.13/site-packages/setuptools/__init__.py", line 117, in setup
return distutils.core.setup(**attrs)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools/_distutils/core.py", line 148, in setup
_setup_distribution = dist = klass(attrs)
~~~~~^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools/dist.py", line 319, in __init__
_Distribution.__init__(self, dist_attrs)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools/_distutils/dist.py", line 290, in __init__
self.finalize_options()
~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/site-packages/setuptools/dist.py", line 681, in finalize_options
ep(self)
~~^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools_scm/_integration/setuptools.py", line 123, in infer_version
_assign_version(dist, config)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools_scm/_integration/setuptools.py", line 58, in _assign_version
_version_missing(config)
~~~~~~~~~~~~~~~~^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools_scm/_get_version_impl.py", line 117, in _version_missing
raise LookupError(
...<8 lines>...
)
LookupError: setuptools-scm was unable to detect version for /builddir/alot-0.11.
Make sure you're either building from a fully intact git repository or PyPI tarballs. Most other sources (such as GitHub's tarballs, a git checkout without the .git folder) don't contain the necessary metadata and will not work.
For example, if you're using pip, instead of https://github.com/user/proj/archive/master.zip use git+https://github.com/user/proj.git#egg=proj
ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel
=> ERROR: alot-0.11_1: do_build: 'python3 -m build --no-isolation --wheel ${make_build_args} ${make_build_target}' exited with 1
=> ERROR: in do_build() at common/build-style/python3-pep517.sh:17
```
</p>
</details>
The package does not exist on PyPI (there is one, but it's deprecated) and `git+https` not working when fetching tarballs, I'm not sure how to continue.
- Package mailcap from python-deadlib](https://github.com/youknowone/python-deadlib), but I'm not sure if Void allows that.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: alot requires mailcap library which was removed in Python-3.13
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
@ 2025-01-24 16:37 ` ahesford
2025-01-25 2:26 ` Vinfall
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: ahesford @ 2025-01-24 16:37 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 258 bytes --]
New comment by ahesford on void-packages repository
https://github.com/void-linux/void-packages/issues/54086#issuecomment-2612944189
Comment:
You should be fetching the PyPI tarball, not an archive from Github. That will probably satisfy `setuptools_scm`.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: alot requires mailcap library which was removed in Python-3.13
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
2025-01-24 16:37 ` ahesford
@ 2025-01-25 2:26 ` Vinfall
2025-01-25 2:27 ` Vinfall
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Vinfall @ 2025-01-25 2:26 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 332 bytes --]
New comment by Vinfall on void-packages repository
https://github.com/void-linux/void-packages/issues/54086#issuecomment-2613732240
Comment:
Their PyPI version is outdated for years (0.7.0 released in 2018 v.s. GitHub latest 0.11 released in 2024) and lower than current version Void packaged (0.10). I don't think it would work.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: alot requires mailcap library which was removed in Python-3.13
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
2025-01-24 16:37 ` ahesford
2025-01-25 2:26 ` Vinfall
@ 2025-01-25 2:27 ` Vinfall
2025-01-25 4:53 ` ahesford
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Vinfall @ 2025-01-25 2:27 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 384 bytes --]
New comment by Vinfall on void-packages repository
https://github.com/void-linux/void-packages/issues/54086#issuecomment-2613732240
Comment:
Their PyPI version is outdated for years (0.7.0 released in 2018 v.s. GitHub latest 0.11 released in 2024) and lower than current version Void packaged (0.10). I don't think it would work, and even if it works, it's essentially a downgrade.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: alot requires mailcap library which was removed in Python-3.13
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
` (2 preceding siblings ...)
2025-01-25 2:27 ` Vinfall
@ 2025-01-25 4:53 ` ahesford
2025-01-25 10:11 ` Vinfall
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: ahesford @ 2025-01-25 4:53 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 504 bytes --]
New comment by ahesford on void-packages repository
https://github.com/void-linux/void-packages/issues/54086#issuecomment-2613780388
Comment:
Sorry, I missed the part about PyPI not having up-to-date tarballs.
In general, I don't think we should be packaging redistributions of removed stdlib modules. It papers over the real problem, which is people ignoring Python deprecations for years. We've made a couple of exceptions, but those usually satisfy deficiencies in a large number of Void packages.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: alot requires mailcap library which was removed in Python-3.13
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
` (3 preceding siblings ...)
2025-01-25 4:53 ` ahesford
@ 2025-01-25 10:11 ` Vinfall
2025-01-25 13:19 ` ahesford
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Vinfall @ 2025-01-25 10:11 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 330 bytes --]
New comment by Vinfall on void-packages repository
https://github.com/void-linux/void-packages/issues/54086#issuecomment-2613913414
Comment:
I see, this is not qualified for an exception IMO.
I can wait for a new upstream release and would revisit this once I have enough motivation to fix alot/afew/notmuch issues altogether.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: alot requires mailcap library which was removed in Python-3.13
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
` (4 preceding siblings ...)
2025-01-25 10:11 ` Vinfall
@ 2025-01-25 13:19 ` ahesford
2025-01-26 12:23 ` [ISSUE] [CLOSED] " Vinfall
2025-01-26 12:23 ` Vinfall
7 siblings, 0 replies; 9+ messages in thread
From: ahesford @ 2025-01-25 13:19 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 375 bytes --]
New comment by ahesford on void-packages repository
https://github.com/void-linux/void-packages/issues/54086#issuecomment-2613964360
Comment:
As a workaround, create a virtual environment with `--system-site-packages`, install the dead `mailcap` in the environment, and you should be able to run even our packaged version as long as you start it with the venv interpreter.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [ISSUE] [CLOSED] alot requires mailcap library which was removed in Python-3.13
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
` (5 preceding siblings ...)
2025-01-25 13:19 ` ahesford
@ 2025-01-26 12:23 ` Vinfall
2025-01-26 12:23 ` Vinfall
7 siblings, 0 replies; 9+ messages in thread
From: Vinfall @ 2025-01-26 12:23 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 7335 bytes --]
Closed issue by Vinfall on void-packages repository
https://github.com/void-linux/void-packages/issues/54086
Description:
### Is this a new report?
Yes
### System Info
Void 6.12.10_1 x86_64 GenuineIntel uptodate rrFFFFFFFFFFFFFFFFF
### Package(s) Affected
alot-0.10_2
### Does a report exist for this bug with the project's home (upstream) and/or another distro?
Yes, reported as https://github.com/pazz/alot/issues/1632 and fixed in https://github.com/pazz/alot/pull/1684 (unreleased).
### Expected behaviour
Running `alot` successfully.
### Actual behaviour
```python
$ alot
Traceback (most recent call last):
File "/sbin/alot", line 33, in <module>
sys.exit(load_entry_point('alot==0.10', 'console_scripts', 'alot')())
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/sbin/alot", line 25, in importlib_load_entry_point
return next(matches).load()
~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/importlib/metadata/__init__.py", line 179, in load
module = import_module(match.group('module'))
File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 1026, in exec_module
File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
File "/usr/lib/python3.13/site-packages/alot/__main__.py", line 10, in <module>
from alot.settings.const import settings
File "/usr/lib/python3.13/site-packages/alot/settings/const.py", line 4, in <module>
from .manager import SettingsManager
File "/usr/lib/python3.13/site-packages/alot/settings/manager.py", line 7, in <module>
import mailcap
ModuleNotFoundError: No module named 'mailcap'
```
### Steps to reproduce
```sh
xi alot
alot
```
Possible solutions:
- Use upstream patch/Update alot to 0.11, did not work as the patch is not included and I can't even build it.
<details><summary>Build log</summary>
<p>
```sh
=> alot-0.11_1: running do_build ...
* Getting build dependencies for wheel...
Traceback (most recent call last):
File "/usr/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
main()
~~~~^^
File "/usr/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in main
json_out["return_val"] = hook(**hook_input["kwargs"])
~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 143, in get_requires_for_build_wheel
return hook(config_settings)
File "/usr/lib/python3.13/site-packages/setuptools/build_meta.py", line 334, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=[])
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools/build_meta.py", line 304, in _get_build_requires
self.run_setup()
~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/site-packages/setuptools/build_meta.py", line 320, in run_setup
exec(code, locals())
~~~~^^^^^^^^^^^^^^^^
File "<string>", line 1, in <module>
File "/usr/lib/python3.13/site-packages/setuptools/__init__.py", line 117, in setup
return distutils.core.setup(**attrs)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools/_distutils/core.py", line 148, in setup
_setup_distribution = dist = klass(attrs)
~~~~~^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools/dist.py", line 319, in __init__
_Distribution.__init__(self, dist_attrs)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools/_distutils/dist.py", line 290, in __init__
self.finalize_options()
~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/site-packages/setuptools/dist.py", line 681, in finalize_options
ep(self)
~~^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools_scm/_integration/setuptools.py", line 123, in infer_version
_assign_version(dist, config)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools_scm/_integration/setuptools.py", line 58, in _assign_version
_version_missing(config)
~~~~~~~~~~~~~~~~^^^^^^^^
File "/usr/lib/python3.13/site-packages/setuptools_scm/_get_version_impl.py", line 117, in _version_missing
raise LookupError(
...<8 lines>...
)
LookupError: setuptools-scm was unable to detect version for /builddir/alot-0.11.
Make sure you're either building from a fully intact git repository or PyPI tarballs. Most other sources (such as GitHub's tarballs, a git checkout without the .git folder) don't contain the necessary metadata and will not work.
For example, if you're using pip, instead of https://github.com/user/proj/archive/master.zip use git+https://github.com/user/proj.git#egg=proj
ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel
=> ERROR: alot-0.11_1: do_build: 'python3 -m build --no-isolation --wheel ${make_build_args} ${make_build_target}' exited with 1
=> ERROR: in do_build() at common/build-style/python3-pep517.sh:17
```
</p>
</details>
<details><summary>Template patch</summary>
<p>
```diff
--- a/srcpkgs/alot/template
+++ b/srcpkgs/alot/template
@@ -1,18 +1,19 @@
# Template file for 'alot'
pkgname=alot
-version=0.10
-revision=2
-build_style=python3-module
-hostmakedepends="python3-setuptools python3-Sphinx python3-notmuch2 python3-cffi"
-depends="python3-setuptools python3-Twisted python3-notmuch2 python3-configobj
- gpgme-python3 python3-magic python3-urwidtrees"
+version=0.11
+revision=1
+build_style=python3-pep517
+hostmakedepends="python3-wheel python3-setuptools_scm python3-Sphinx
+ python3-notmuch2 python3-cffi git"
+depends="python3-Twisted python3-notmuch2 python3-configobj gpgme-python3
+ python3-magic python3-urwidtrees"
checkdepends="$depends gnupg2 procps-ng python3-pytest"
short_desc="Terminal-based mail user agent based on the notmuch mail indexer"
maintainer="Felix Van der Jeugt <felix.vanderjeugt@posteo.net>"
license="GPL-3.0-or-later"
homepage="https://github.com/pazz/alot"
distfiles="https://github.com/pazz/${pkgname}/archive/${version}.tar.gz"
-checksum=71f382aa751fb90fde1a06a0a4ba43628ee6aa6d41b5cd53c8701fd7c5ab6e6e
+checksum=4b82a38af65bea84719c40a01f4c1edc759263f7a752e1f1b3457e72ef7b0a2d
do_check() {
pytest3 -k 'not test_no_spawn_no_stdin_attached'
--
2.48.1
```
</p>
</details>
The package does not exist on PyPI (there is one, but it's deprecated) and `git+https` not working when fetching tarballs, I'm not sure how to continue.
- Package mailcap from [python-deadlib](https://github.com/youknowone/python-deadlib), but I'm not sure if Void allows that.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: alot requires mailcap library which was removed in Python-3.13
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
` (6 preceding siblings ...)
2025-01-26 12:23 ` [ISSUE] [CLOSED] " Vinfall
@ 2025-01-26 12:23 ` Vinfall
7 siblings, 0 replies; 9+ messages in thread
From: Vinfall @ 2025-01-26 12:23 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 306 bytes --]
New comment by Vinfall on void-packages repository
https://github.com/void-linux/void-packages/issues/54086#issuecomment-2614377248
Comment:
Never mind, I took the chance and switched to [meli](https://git.meli-email.org/meli/meli.git) instead. While this is not solved, I'm no longer affected. Closing.
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-01-26 12:23 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-01-23 4:20 [ISSUE] alot requires mailcap library which was removed in Python-3.13 Vinfall
2025-01-24 16:37 ` ahesford
2025-01-25 2:26 ` Vinfall
2025-01-25 2:27 ` Vinfall
2025-01-25 4:53 ` ahesford
2025-01-25 10:11 ` Vinfall
2025-01-25 13:19 ` ahesford
2025-01-26 12:23 ` [ISSUE] [CLOSED] " Vinfall
2025-01-26 12:23 ` Vinfall
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).