07th-mod / 07th-mod/python-patcher

Depreciating Python 2 / Use pyinstaller/py2app for MacOS builds

Ouverte
#127 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
enhancement help wanted
Langage dominant
JavaScript
Étoiles
214
Forks
12
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

As you've probably noticed, the installer breaks fairly often due to making a change which works on Python 3, but which doesn't work on Python 2.

We've been supporting Python 2 for MacOS users, as Python 2 comes pre-installed for them, and we don't want to make them install Python 3 on their system (it would complicate the install process, and also may alter their system setup)

One way around this would be to use a tool like [pyinstaller](https://www.pyinstaller.org/) or [py2app](https://py2app.readthedocs.io/en/latest/) to generate a standalone installer/app which the user can just run. However doing so would probably require quite a bit of testing, as I suspect some things our installer currently does (like writing to a folder adjacent to the executable) will break in this configuration.

While developers on Windows/Linux can't do the builds on their own computers, Github Actions supports MacOS as an environment, so once it's setup properly it should be OK to maintain.

I'm mainly opening this issue in case any MacOS users/developers want to figure out some distribution method for the installer on MacOS. It probably won't happen any time soon, but I thought I should at least make an issue for it.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Le problème concerne la création d'un installateur macOS autonome utilisant pyinstaller ou py2app pour remplacer l'installateur actuel dépendant de Python 2. Commencez par examiner le code de l'installateur existant pour comprendre son flux d'écriture de fichiers et d'exécution. Testez la construction d'une application autonome simple avec pyinstaller dans un environnement macOS, éventuellement en utilisant GitHub Actions. 'Terminé' signifie un installateur autonome fonctionnel qui ne casse pas les fonctionnalités existantes, nécessitant des tests approfondis des opérations sur les fichiers.

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

Évaluation

Stack technique
github-actions, macos, python
Domaine
build-system, cli, release
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

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