Kivy: Prise en charge de python 3.8, 3.9

Créé le 1 avr. 2020  ·  25Commentaires  ·  Source: kivy/kivy

Votre demande de fonctionnalité est liée à un problème ?
Kivy est tellement merveilleux pour moi! Mais je suis juste frustré qu'il n'y ait pas de roue pour python 3.8 et 3.9

Décrivez la solution que vous souhaitez
Rendez les roues python3.8 et 3.9 disponibles pour pip.

Décrivez les alternatives que vous avez envisagées
rien

Contexte supplémentaire
rien

Commentaire le plus utile

Malheureusement, nous n'avons pas de roues pour python 3.8 pour notre version stable. Nous avons essayé mais nous n'avons plus rien configuré pour les générer.

Cependant, si vous êtes prêt à utiliser master, il existe de très bonnes roues disponibles pour 3.8, et en fait l'installation a été considérablement simplifiée. L'essentiel est à l' étape 2 d' utiliser pip install kivy[base] kivy_examples --pre --extra-index-url https://kivy.org/downloads/simple/ pour obtenir kivy de notre serveur car il n'est pas disponible sur pypi.

Pour les ajouter à pypi, nous devrons faire une nouvelle version, mais ce n'est pas dans les cartes pour le moment, semble-t-il.

Tous les 25 commentaires

Par curiosité, est-ce que l'installation à partir du code source fonctionne avec python 3.8 ?

Euh, je n'ai pas essayé. ??

Malheureusement, nous n'avons pas de roues pour python 3.8 pour notre version stable. Nous avons essayé mais nous n'avons plus rien configuré pour les générer.

Cependant, si vous êtes prêt à utiliser master, il existe de très bonnes roues disponibles pour 3.8, et en fait l'installation a été considérablement simplifiée. L'essentiel est à l' étape 2 d' utiliser pip install kivy[base] kivy_examples --pre --extra-index-url https://kivy.org/downloads/simple/ pour obtenir kivy de notre serveur car il n'est pas disponible sur pypi.

Pour les ajouter à pypi, nous devrons faire une nouvelle version, mais ce n'est pas dans les cartes pour le moment, semble-t-il.

@matham qu'est-ce qui retient la création d'une nouvelle version ?

Le temps et les efforts du développeur qui manquent pour le moment.

alors comment y remédier

si quelqu'un ne peut toujours pas installer Kivy pour python 3.8 dans le système d'exploitation Windows , je suggère de télécharger à partir de https://www.lfd.uci.edu/~gohlke/pythonlibs/ et de trouver Kivy . Kivy‑1.11.1‑cp38‑cp38‑win_amd64.whl .. signifie pour python 3.8, Windows OS x64.

et installez-le par pip install Kivy‑1.11.1‑cp38‑cp38‑win_amd64.whl (exemple)

pip install kivy [base] kivy_examples --pre --extra-index-url https://kivy.org/downloads/simple/

résoudre mon problème, merci

C'est octobre maintenant. Y a-t-il eu des changements au niveau de l'installation de la roue de Kivy pour Python 3.8 ?
Je suis sur Ubuntu 20.04 et les solutions mentionnées ci-dessus n'ont pas fonctionné pour moi. Peut-être parce que c'est spécifique à W10.

À l'heure actuelle, pip3 install kivy sur ma machine s'affiche en erreur avec :

```
ERROR: Dependency for context.pyx not resolved: config.pxi
ERROR: Dependency for compiler.pyx not resolved: config.pxi
ERROR: Dependency for context_instructions.pyx not resolved: config.pxi
ERROR: Dependency for fbo.pyx not resolved: config.pxi
ERROR: Dependency for gl_instructions.pyx not resolved: config.pxi
ERROR: Dependency for instructions.pyx not resolved: config.pxi
ERROR: Dependency for opengl.pyx not resolved: config.pxi
ERROR: Dependency for opengl_utils.pyx not resolved: config.pxi
ERROR: Dependency for shader.pyx not resolved: config.pxi
ERROR: Dependency for stencil_instructions.pyx not resolved: config.pxi
ERROR: Dependency for scissor_instructions.pyx not resolved: config.pxi
ERROR: Dependency for texture.pyx not resolved: config.pxi
ERROR: Dependency for vbo.pyx not resolved: config.pxi
ERROR: Dependency for vertex.pyx not resolved: config.pxi
ERROR: Dependency for vertex_instructions.pyx not resolved: config.pxi
ERROR: Dependency for cgl.pyx not resolved: config.pxi
ERROR: Dependency for cgl_mock.pyx not resolved: config.pxi
ERROR: Dependency for cgl_gl.pyx not resolved: config.pxi
ERROR: Dependency for cgl_glew.pyx not resolved: config.pxi
ERROR: Dependency for cgl_sdl2.pyx not resolved: config.pxi
ERROR: Dependency for svg.pyx not resolved: config.pxi
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

```
Pour le moment, je suis passé à Python 3.6. Je ne pense pas que je verrai une grande différence.

En tant que nouveau venu potentiel à Kivy, je suis vraiment rebuté par ce manque de soutien. Est-ce ainsi que vous souhaitez accueillir les nouveaux utilisateurs ? La première étape évidente est pip install kivy et ensuite nous devons juste chercher pourquoi cela ne fonctionne pas.

Nous prenons en charge tous les principaux systèmes d'exploitation
https://kivy.org/doc/stable/philosophy.html

Mais pas leurs versions actuelles (comme Ubuntu LTS), comme il s'avère.

Pas besoin de négativité, nous travaillons tous ici pro bono, sur notre temps personnel. L'aide est toujours la bienvenue, il y a beaucoup à faire.

Kivy fonctionne absolument sur Ubuntu 20.04, les documents peuvent être mis à jour pour refléter cela.

gabriel<strong i="7">@gryphon</strong>:~> docker run -it ubuntu:20.04 bash
root<strong i="8">@6599fa0c0d81</strong>:/# apt update
Get:1 http://archive.ubuntu.com/ubuntu focal InRelease [265 kB]
[…]
Reading state information... Done
30 packages can be upgraded. Run 'apt list --upgradable' to see them.
root<strong i="9">@6599fa0c0d81</strong>:/# apt install python3.8 python3-pip -y
Reading package lists... Done
Building dependency tree       
Reading state information... Done
[…]
done.
root<strong i="10">@6599fa0c0d81</strong>:/# python3.8 -m pip install --pre kivy[full]
Collecting kivy[all]
  Downloading Kivy-2.0.0rc3-cp38-cp38-manylinux2010_x86_64.whl (22.0 MB)
     |████████████████████████████████| 22.0 MB 13 kB/s 
  WARNING: kivy 2.0.0rc3 does not provide the extra 'all'
Collecting pygments
  Downloading Pygments-2.7.1-py3-none-any.whl (944 kB)
     |████████████████████████████████| 944 kB 5.6 MB/s 
Collecting docutils
  Downloading docutils-0.16-py2.py3-none-any.whl (548 kB)
     |████████████████████████████████| 548 kB 5.1 MB/s 
Collecting Kivy-Garden>=0.1.4
  Downloading kivy-garden-0.1.4.tar.gz (6.8 kB)
Collecting requests
  Downloading requests-2.24.0-py2.py3-none-any.whl (61 kB)
     |████████████████████████████████| 61 kB 459 kB/s 
Collecting chardet<4,>=3.0.2
  Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
     |████████████████████████████████| 133 kB 9.6 MB/s 
Collecting certifi>=2017.4.17
  Downloading certifi-2020.6.20-py2.py3-none-any.whl (156 kB)
     |████████████████████████████████| 156 kB 13.4 MB/s 
Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1
  Downloading urllib3-1.25.10-py2.py3-none-any.whl (127 kB)
     |████████████████████████████████| 127 kB 5.0 MB/s 
Collecting idna<3,>=2.5
  Downloading idna-2.10-py2.py3-none-any.whl (58 kB)
     |████████████████████████████████| 58 kB 5.6 MB/s 
Building wheels for collected packages: Kivy-Garden
  Building wheel for Kivy-Garden (setup.py) ... done
  Created wheel for Kivy-Garden: filename=Kivy_Garden-0.1.4-py3-none-any.whl size=4531 sha256=40c7f88731f91c2bb078133980911f6b7a9415ac1398a2eb65a16ed605b468c7
  Stored in directory: /root/.cache/pip/wheels/d2/72/1a/9ddd17f00755707937caa350616965fb3330a6270425f397e6
Successfully built Kivy-Garden
Installing collected packages: pygments, docutils, chardet, certifi, urllib3, idna, requests, Kivy-Garden, kivy
Successfully installed Kivy-Garden-0.1.4 certifi-2020.6.20 chardet-3.0.4 docutils-0.16 idna-2.10 kivy-2.0.0rc3 pygments-2.7.1 requests-2.24.0 urllib3-1.25.10
root<strong i="11">@6599fa0c0d81</strong>:/# python3.8
Python 3.8.5 (default, Jul 28 2020, 12:59:40) 
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import kivy
[WARNING] [Config      ] Older configuration version detected (0 instead of 21)
[WARNING] [Config      ] Upgrading configuration in progress.
[INFO   ] [Logger      ] Record log in /root/.kivy/logs/kivy_20-10-08_0.txt
[INFO   ] [Kivy        ] v2.0.0rc3, git-20c14b2, 20200615
[INFO   ] [Kivy        ] Installed at "/usr/local/lib/python3.8/dist-packages/kivy/__init__.py"
[INFO   ] [Python      ] v3.8.5 (default, Jul 28 2020, 12:59:40) 
[GCC 9.3.0]
[INFO   ] [Python      ] Interpreter at "/usr/bin/python3.8"
>>> 

Merci et je suis désolé. Kivy avait l'air vraiment prometteur, mais quand je suis arrivé à l'installation, cela s'est avéré être une corvée. Je vais quand même lui donner une chance et si j'aime ça, j'envisagerai certainement de rejoindre le projet.

Salut, je peux voir que vous pouvez installer Kivy dans un conteneur avec Python 3.8 installé.
La différence que j'ai remarquée est que vous avez utilisé le drapeau --pre . Cela a fait l'affaire pour moi. Je ne pouvais pas l'installer sans le drapeau.

La page d'aide dit ceci à propos du drapeau :

--pre Include pre-release and development versions. By default, pip only finds stable versions.

Le commentaire ci-dessus d'avril indiquait déjà comment utiliser le drapeau pre . Et ces instructions auraient fonctionné avant même que nous ayons téléchargé la pré-version sur pypi il y a quelques mois, car elles montrent comment télécharger depuis notre serveur à l'aide de pip.

Cela ne change pas mon souci de faire fuir les nouveaux utilisateurs potentiels (moi y compris). Et inclure le drapeau --pre dans la section d'installation de la documentation, tout en rendant les choses meilleures qu'elles ne le sont, ne sera pas une solution parfaite, car elle souligne toujours qu'il n'y a pas de version stable et fonctionnelle pour Python 3.8.

Mon commentaire était plus dirigé vers @codinghedgehog-python car j'ai remarqué que plusieurs personnes ont commenté ici et ailleurs que cela ne fonctionnait pas après avoir vu ce problème, mais elles ont apparemment raté mon commentaire d'avril et je ne savais pas pourquoi.

en pratique kivy==2.0.0rc3 s'installe sur Python 3.8 , c'est une version de facto car c'est ce qu'en pratique nous devons utiliser sur Android (qui utilise Python 3.8).

Ce qui manque dans la documentation d'installation de Kivy 1.11.1 est (en grosses lettres amicales) "Python 3.7 UNIQUEMENT"

La difficulté majeure avec les docs est que nous ne pouvons pas facilement mettre à jour les docs stables (CI ne le construira plus). Donc, à moins que nous ne modifiions la page d'accueil pour créer un lien vers les documents principaux, ce que nous ne devrions pas faire, nous n'avons aucun moyen d'ajouter ces informations aux documents (stables) que les nouveaux utilisateurs voient.

Peut-être qu'à l'avenir, lorsque nous publierons et mettrons à jour des documents stables, nous devrions indiquer sur les documents la version max de python prise en charge avec les roues.

Je vois, mais Kivy commence à ressembler à un abandonware. Aujourd'hui, il y a quelqu'un qui essaie d'installer sur Python 3.9

Peut-être publier 2.0.0 et accepter que ce ne sera pas parfait, à la sortie.

Il est vrai que Kivy a moins de core-devs actifs qu'il y a 3-4 ans, mais c'est la nature de l'open source où les gens vont et viennent pour une raison quelconque et actuellement nous sommes un peu dans un creux.

Et le site Web en particulier, Kivy a besoin d'une mise à niveau majeure de son site Web depuis environ 5 ans maintenant, mais personne qui a examiné cela jusqu'à présent n'a donné suite. Je suppose que ce n'est pas une entreprise mineure.

Le plan est de publier la version 2.0.0 dès que nous pourrons construire des roues 3.9 : https://github.com/kivy/kivy/pull/7132 et quelqu'un travaille sur les notes de version, etc. Nous publions généralement une fois par an, et cela fait environ un an depuis la dernière version. Sauf que python a également augmenté sa cadence de sortie à une fois par an, nous n'avons donc pas de roues pour la 3.8, tout comme la 3.9 a été publiée.

@ janek37 Les développeurs python (et javascript) ont tendance à déclarer les bibliothèques abandonnées, obsolètes, ... s'ils ne prennent pas immédiatement en charge les dernières dépendances. Personnellement, je préfère la stabilité de l'API et éviter les régressions par rapport à l'exécution de versions de dépendance à la pointe de la technologie. Kivy est un logiciel complexe, et dans le domaine de la fiabilité, les développeurs de Kivy font du très bon travail depuis longtemps maintenant.

Considérant le fait que les développeurs principaux de Kivy n'ont pas le financement comme Canonical, Facebook ou Microsoft, ils font du très bon travail . De plus, je dois dire que je reçois un support très décent sur Discord et Stack Overflow de la part des membres de leur équipe.
Et si ceci et cela ne fonctionne parfois pas immédiatement et nécessite des ajustements supplémentaires, eh bien, c'est open source et la main-d'œuvre coûte cher. Malgré tout cela, Kivy est toujours considéré comme le framework GUI le plus mature, alors bravo pour cela.

Peut-être que je n'ai pas été clair, Kivy et ses développeurs sont incroyables.

Mais les noobs ne comprennent pas cela, ils constatent simplement que l'installation ne fonctionne pas. Les utilisateurs plus expérimentés considèrent le fait de ne pas prendre en charge une version assez actuelle de Python comme un drapeau rouge.

Si je comprends bien, Python 3.9 commence à traiter Python comme une cible mobile, mais jusqu'à ce que cela soit résolu, il y a un problème. Peut-être que des versions de maintenance plus fréquentes (celles qui ne nécessitent pas de modifications de la documentation) seraient utiles ?

Les versions de maintenance seraient désormais bloquées derrière la 2.0.0 . Cela doit être publié, même si cela signifie que 2.0.1 prend en charge Python 3.9 dans un avenir proche.

Nous améliorons en permanence le processus d'installation en ajoutant des roues pour différents os, en essayant de faire le Kivy deps plus simple etc donc pour la prochaine version , il venait de travailler comme un strict minimum d' installation avec pip install kivy bien que le reccomended d' installation sera pip install kivy[base] ou pip install kivy[full] . C'est pourquoi nous devons mettre à jour l'installation avec les nouvelles versions. Mais peut-être que cela se stabilisera maintenant que nous avons des roues pour tous les principaux systèmes d'exploitation et avec les changements ci-dessus.

Pour ce qui est de faire une sortie maintenant sans attendre la 3.9, ce n'est pas vraiment ce qui bloque en ce moment. Quelques problèmes doivent être résolus avant que nous puissions publier et le temps qu'il faut pour faire une version comme la compilation des notes de version, les tests sur tous les systèmes d'exploitation comme conda, apt, etc. signifie que lorsque cela est prêt, les roues 3.9 devraient également être prêtes.

pip install kivy[base] kivy_examples --pre --extra-index-url https://kivy.org/downloads/simple/

cela a résolu mon problème

Cette page vous a été utile?
0 / 5 - 0 notes