Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Logging error: "TypeError: %d format: a real number is required, not str"

Ouverte Adaptée aux débutants
#294 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 4 jours

@mill1000 y travaille déjà.

Depuis le 12/10/2026.

  • #295 par @mill1000 — ouverte

Évaluation

Difficulté
1/5
Temps estimé
Moins d'une heure
Accessibilité débutants
88/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
python
Domaine
cli

Piste de recherche

La trace d'erreur pointe vers l'appel LOGGER.info autour de la ligne 918 de sendspin/cli.py, qui formate la carte avec %d alors qu'il transmet une chaîne. Vérifie le spécificateur de format par rapport aux arguments passés. C'est terminé lorsque le message est journalisé sans erreur de logging, ce que tu peux confirmer en lançant sendspin daemon avec un périphérique hw:CARD=... et en constatant qu'aucune trace d'erreur n'apparaît.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

When attempting to test the changes introduced in #279, I receive a logging error:

> sendspin daemon  --audio-device hw:CARD=sndrpijustboomd,DEV=0
INFO:sendspin.audio_devices:Using audio device hw:CARD=sndrpijustboomd,DEV=0: hw:CARD=sndrpijustboomd,DEV=0
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.13/logging/__init__.py", line 1151, in emit
    msg = self.format(record)
  File "/usr/lib/python3.13/logging/__init__.py", line 999, in format
    return fmt.format(record)
           ~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 712, in format
    record.message = record.getMessage()
                     ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/logging/__init__.py", line 400, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: %d format: a real number is required, not str
Call stack:
  File "/home/pi/.local/bin/sendspin", line 10, in <module>
    sys.exit(main())
  File "/home/pi/.local/share/uv/tools/sendspin/lib/python3.13/site-packages/sendspin/cli.py", line 808, in main
    return asyncio.run(_run_client_mode(args))
  File "/usr/lib/python3.13/asyncio/runners.py", line 195, in run
    return runner.run(main)
  File "/usr/lib/python3.13/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "/usr/lib/python3.13/asyncio/base_events.py", line 712, in run_until_complete
    self.run_forever()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 683, in run_forever
    self._run_once()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 2042, in _run_once
    handle._run()
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
  File "/home/pi/.local/share/uv/tools/sendspin/lib/python3.13/site-packages/sendspin/cli.py", line 918, in _run_client_mode
    LOGGER.info(
Message: 'Using ALSA mixer volume control: card %d, element %r'
Arguments: ('sndrpijustboomd', 'Digital')
INFO:sendspin.daemon.daemon:Starting Sendspin daemon: vQzqUbG552kVFhuNOkxsCH-ua72D3vGiQZMoidkCdw4
INFO:sendspin.daemon.daemon:Listening for server connections on port 8928 (mDNS: _sendspin._tcp.local.)
INFO:aiosendspin.client.listener:ClientListener started on port 8928, path /sendspin
INFO:aiosendspin.client.listener:mDNS advertising client 'vQzqUbG552kVFhuNOkxsCH-ua72D3vGiQZMoidkCdw4' on port 8928 with path /sendspin
INFO:sendspin.daemon.daemon:Server connected

It looks like the message assumes an integer card number which is no longer true

https://github.com/Sendspin/sendspin-python-cli/blob/0d8c33536a3af7fe9a51f79a7b3528024c872f25/sendspin/cli.py#L919

Langage dominant
Python
Étoiles
198
Forks
40
Merge moyen
4 j 11 h
PR mergées (30 j)
10

Préparer son environnement

  • Aucun Dockerfile ni fichier Docker Compose
  • Propose un modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de Sendspin/sendspin-python-cli

Toutes les issues de Sendspin/sendspin-python-cli

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.