gillesdegottex / fmit

Free Music Instrument Tuner (FMIT)
http://gillesdegottex.github.io/fmit
GNU General Public License v2.0
117 stars 24 forks source link

Numéro de version dans le "À propos" #69

Closed trebmuh closed 6 years ago

trebmuh commented 6 years ago

Re @gillesdegottex ,

toujours en train d'empaqueter la version 1.1.13 et je m'aperçois que le numéro de version n'est pas présent dans le "À propos".

version-fmit

Aurais-tu une idée d'où ça peut venir ? Y'a-t'il une option à fournir à l'étape de configuration ou de construction peut être ? Pour info, je le construis qmake PREFIX=/usr "CONFIG+=acs_qt acs_alsa acs_jack" fmit.pro

PS : je ne m'en aperçois que maintenant, mais c'était peut être déjà présent dans les versions précédentes

gillesdegottex commented 6 years ago

Je vois que la version de Ubuntu n'a pas ce probleme. Tu pourais jeter un oeuil a leurs script de packaging ?

trebmuh commented 6 years ago

La version de ubuntu est la 1.0.0 qui utilisait le système cmake et qui définissait la version de fmit ici : https://anonscm.debian.org/cgit/collab-maint/fmit.git/tree/CMakeLists.txt

Divagation : j'ai l'impression en regardant dans le fmit.pro que la version est définie en choppant le tag sur git. J'ai essayé de faire un paquet en ajoutant "git" en tant que dépendance de construction (dans debian/control), mais ça n'a pas mieux fonctionné. Peut être que le chroot de construction d'un paquet deb (j'utilise pbluider) ne permet pas d'accéder au réseau, je ne sais pas, je ne suis pas assez spécialiste pour ça, mais ça me semblerait logique surtout que debian poursuit un effort de reproductibilité bit à bit des paquets.

Pour la version LZK-2, j'ai trouvé un contournement en faisant une rustine de src/aboutbox.cpp qui remplace QString fullversion = "Version "+FMITVersion(); par QString fullversion = "Version 1.1.13"+FMITVersion();. C'est pas très propre, mais ça marche pour que ça soit affiché correctement.

N'hésite pas à me dire si je peux aider ici.

gillesdegottex commented 6 years ago

C'est pas une impression :) tu vois juste: FMITVERSIONGITPRO = $$system(git describe --tags --always)

Le problem avec la solution Ubuntu et la tienne c'est que le packager doit penser a corriger manuellement le numero de version a chaque nouveau package pour chaque numero de version :(

Je suis vraiment surpris que $$system(git describe --tags --always) fonctionne si rarement. Je dois pas comprendre comment la construction d'un package marche. le .git est retire des sources ? le code est deplace dans un rep qui est chroote ?

Je peux changer ca bien sur si ca ameiore la distributivite/portabilite. Simplement: C'est quoi la pratique la plus standard pour gerer ca ? Le mainteneur principal du logiciel change manuellement les numeros de version maj/min/rev dans un fichier d'information ?

trebmuh commented 6 years ago

Le problem avec la solution Ubuntu et la tienne c'est que le packager doit penser a corriger manuellement le numero de version a chaque nouveau package pour chaque numero de version :(

Ouep, c'est améliorable.

le .git est retire des sources ?

Oui, c'est peut être ça le soucis. Dans l'empaquetage Debian (et donc ubuntu et consorts aussi), il est conseillé (dans les guidelines il me semble) de retirer tout ce qui concerne les gestionnaires de version (les .git, les .cvs, ...).

Simplement: C'est quoi la pratique la plus standard pour gerer ca ? Le mainteneur principal du logiciel change manuellement les numeros de version maj/min/rev dans un fichier d'information ?

Oui, je vois ça très souvent dans les différents makefile, *.pro, ... Ça me semble être la technique la plus utilisée.

gillesdegottex commented 6 years ago

Bon, je vais ptr switcher a cette methode standard. Domage, j'aurais voulu automatiser ca pour eviter des mismatch entre git et code :/

trebmuh commented 6 years ago

Si j'entends parler d'autre chose, je te ferai signe.

gillesdegottex commented 6 years ago

Merci!

trebmuh commented 6 years ago

@gillesdegottex : pour info, je viens de reconstruire un LMMS pour LZK-2, et lors de la construction, j'ai vu passer un Git not found. Using release info from /CMakeLists.txt ce qui me laisse à penser qu'il essaie de chopper la version depuis git et, quand ça n'est pas possible, utilise le plan B de chercher les infos dans le CMakeLists.txt .

gillesdegottex commented 6 years ago

Ah! Je suis pas seul :D J'avais fais un truc du genre pour la aboutbox, mais at runtime (lit dans le README.txt). Je vais voir ce que je peux faire de facon similair au moment de la compile.

Merci!

trebmuh commented 6 years ago

OK, tiens moi au jus, je pourrais tester.

trebmuh commented 6 years ago

J'étais en train d'empaqueter la dernière version 1.2.1 pour LibraZiK et je suis demandé s'il y avait des nouvelles à propos de ceci. @gillesdegottex : y en a-t'il ?

gillesdegottex commented 6 years ago

Pas de changements énormes comme d'hab', mais des petites choses quand même bien sympa: New note names: Hindustani, Byzantine Use unicode flat and sharp signs. Use custom save settings and pause icons that better fits the other icons design. Support Flathub (thanks @dsboger !) Runs now on Qt5.4 Bug fixes.

trebmuh commented 6 years ago

Ah, j'ai du mal m'exprimer. J'avais vu le changelog en lisant ceci. Ma question ici portait sur le fait que je dois toujours rustiner le fichier /src/aboutbox.cpp pour que la version correcte soit affichée dans la boîte d'à propos.

gillesdegottex commented 6 years ago

Arf, désolé, je devrais pas merger des PR si tard en lisant de travers :D Je résoud ce prob d'aboutbox lundi.

trebmuh commented 6 years ago

OK, bon dimanche.

gillesdegottex commented 6 years ago

Should be fixed, v1.2.3 still running on Travis.

trebmuh commented 6 years ago

I've build the 1.2.4 version and it does fix the bug. Well done @gillesdegottex !

Closing here now.

gillesdegottex commented 6 years ago

pfiou enfin!

trebmuh commented 6 years ago

:-)