adafruit / adafruit/Adafruit_CircuitPython_BLE_File_Transfer
Docs build broken
- Lenguaje dominante
- Python
- Estrellas
- 28
- Forks
- 5
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
When I build the docs locally I first got a failure due to `_bleio` module not found.
I added that to the mock list which got me past that error.
But now the build is failing with this error:
```
WARNING: autodoc: failed to import module 'adafruit_ble_file_transfer'; the following exception was raised:
Traceback (most recent call last):
File ".cpy_venv/lib/python3.12/site-packages/sphinx/ext/autodoc/importer.py", line 143, in import_module
return importlib.import_module(modname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/importlib/__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1331, in _find_and_load_unlocked
File "", line 935, in _load_unlocked
File "", line 995, in exec_module
File "", line 488, in _call_with_frames_removed
File "Adafruit_CircuitPython_BLE_File_Transfer/adafruit_ble_file_transfer.py", line 76, in
class FileTransferService(Service):
File "Adafruit_CircuitPython_BLE_File_Transfer/adafruit_ble_file_transfer.py", line 86, in FileTransferService
raw = _TransferCharacteristic()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "Adafruit_CircuitPython_BLE_File_Transfer/adafruit_ble_file_transfer.py", line 59, in __init__
properties=Characteristic.WRITE_NO_RESPONSE
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unsupported operand type(s) for |: 'WRITE_NO_RESPONSE' and 'READ'
[autodoc.import_object]
```
Which appears to take issue with these lines: https://github.com/adafruit/Adafruit_CircuitPython_BLE_File_Transfer/blob/df30c3c42464bb961b3484a203352af4d6d64edd/adafruit_ble_file_transfer.py#L59-L61
`Characteristic.WRITE_NO_RESPONSE`, `Characteristic.READ` and `Characteristic.NOTIFY` are all ints if you follow them to their value, though they do go through some intermediary classes.
In a python 3.12 REPL I am able to bitwise OR the values wtihout issue:
```
Characteristic.NOTIFY | Characteristic.READ | Characteristic.WRITE_NO_RESPONSE
44
```
I'm not sure why sphinx / autodoc import is failing to do so.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Reproduce la compilación local de la documentación con Python 3.12 e inspecciona el fallo de importación de Sphinx autodoc para adafruit_ble_file_transfer. Empieza por las líneas 59–61 de adafruit_ble_file_transfer.py, especialmente por los valores de los flags de Characteristic, y sigue las clases intermediarias mencionadas en el informe. La tarea estará completada cuando la compilación de la documentación importe el módulo sin este TypeError ni una advertencia de autodoc.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- documentation
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 35/100