[Python-de] develop/editable-mode und "flaches" Package in "src"

Julian Gethmann mail.python.org at gethmann.org
Fr Mär 5 04:34:42 EST 2021


Hallo,

bei mir funktioniert es, wenn man statt
```
package_dir =
     trytond.modules.country_order=src
```
```
package_dir =
     =src
```
schreibt, also den Paketnamen nicht explizit nennt.
Allerdings verwende ich auch Namespace-Pakete.


Mit freundlichen Grüßen,

Julian Gethmann

On 05/03/2021 09:52, Hartmut Goebel wrote:
> Hallo zusammen,
> 
> ich habe eine etwas ungewöhnliche Paketstruktur:
> 
> .
> ├── setup.cfg
> ├── src
> │   └── __init__.py
> └── some_release_helper.py
> 
> Sowie in setup.cfg definiert:
> 
> [options]
> packages = trytond.modules.country_order
> package_dir =
>      trytond.modules.country_order=src
> 
> Was funktioniert: sdist, bdist und bdist_wheel funktionieren wie 
> gewünscht: Das Package __init__.py landet in 
> trytond/modules/country_order/__init__.py. und wenn ich es normal 
> installiere, landen die Datein dort, wo sie hingehören.
> 
> *Was nicht funktioniert*: Wenn ich das Paket mit "pip install -e ." 
> installiere:
> 
>   * zeigt die "trytond-country-order.egg-link" *nicht* auf das "src"
>     Verzeichnis
>   * wird "trytond_country_order.egg-info" im Projekt-Verzeichnis angelegt
> 
> Das resultat ist, dass das Module nicht gefunden wird.
> 
> *Irgendwelche Ideen, woran das liegen könnte?*
> 
> Falls sich jemand über das etwas *ungewöhnliche Directory-Layout 
> wundert*: Tryton-Module haben dieses Layout, nur ohne "src" Directory. 
> Beispiel: <https://hg.tryton.org/modules/country/file/tip>. Da ich auf 
> oberster Verzeichnis-Ebene ein paar Module habe, die nicht in das bdist 
> sollen, möchte ich den eigentlichen Packet-Inhalt in das Verzeichnis 
> "src" verschieben.
> 


Mehr Informationen über die Mailingliste python-de