Sortie d’ONLYOFFICE DocBuilder 5.3 pour générer des documents via des scripts

Posté par . Édité par Davy Defaud, ZeroHeure et Xavier Teyssier. Modéré par Xavier Teyssier. Licence CC by-sa.
6
17
août
2019
Bureautique

ONLYOFFICE, suite bureautique à code source ouvert, libre et gratuite (présentée précédemment sur LinuxFr.org) annonce la sortie de la nouvelle version d’ONLYOFFICE Document Builder, un outil de génération des documents à partir du code JavaScript.
Illustration OnlyOffice Document Builder
Les traits majeurs d’ONLYOFFICE Document Builder s’articulent comme suit :

  • création et prise en charge des fichiers .docx, .xlsx, .pptx et d’autres formats courants ;
  • impression des documents et leur enregistrement sous le format PDF ;
  • édition des documents texte, des feuilles de calcul et de présentations sans les éditeurs des documents : mise en forme du texte, des paragraphes et des pages, insertion des objets, remplissage et formatage des tableaux, gestion des diapositives, sélection de la langue du document, etc. ;
  • génération des rapports permettant de structurer et d’analyser les données.

Document Builder, disponible pour Windows et GNU/Linux, prend en charge les différents langages de programmation. ONLYOFFICE DocBuilder en tant que solution à code source ouvert est distribué sous les termes de la licence AGPL v.3.

Aller plus loin

  • # pandoc ?

    Posté par . Évalué à 6 (+3/-0). Dernière modification le 17/08/19 à 16:22.

    Ou est ce que cela se situe par rapport a pandoc ?

    "La première sécurité est la liberté"

  • # Compilation du projet

    Posté par . Évalué à 10 (+12/-0).

    Bonjour.

    J'ai voulu tester le produit, et me suis donc rendu sur la page « Téléchargement » pour constater :

    30 jours d'essai GRATUIT

    Je me suis alors rendu sur le Github, et j'ai bien constaté que la licence (https://github.com/ONLYOFFICE/DocumentBuilder/blob/master/LICENSE.txt) était une licence libre.
    J'ai donc cherché à compiler le tout, mais je n'ai trouvé aucune instruction, et n'y suis pas parvenu.

    Évidemment, ce post n'est pas un ticket (il y a github pour ça), mais deux questions :

    • Document Builder est-il réellement un produit libre et complètement fonctionnel par lui-même ?
    • Quelqu'un est-il parvenu à compiler le tout ?

    PS : en simple, je n'ai vu que des binaires les uns non libres (celui indiqué plus haut ne l'est pas puisqu'une période d'essai lui est associé), les autres sous forme de librairie (ici disponible https://api.onlyoffice.com/docbuilder/gettingstarted semble l'être en lisant le header), et quant au code, si il a la bonne licence, n'est, à tout le moins, pas facile à compiler.

    • [^] # Re: Compilation du projet

      Posté par . Évalué à 2 (+0/-0).

      Est-ce que tu as testé les versions installées dans la doc pour voir si c'est aussi "30j d'essai" ?

      Docker version : https://helpcenter.onlyoffice.com/server/docker/document/docker-installation.aspx
      Linux version : https://helpcenter.onlyoffice.com/server/linux/document/linux-installation.aspx
      (celle là passe par un apt-get install mais pareil, je ne sais pas si c'est le même paquet proposé à l'accueil Download)

      • [^] # Re: Compilation du projet

        Posté par . Évalué à 4 (+4/-0).

        Ce que tu pointes c'est « Document Server » et non « Document Builder » : donc un autre produit.

        De toute manière, je me suis amusé à tester la compilation, ai posé un ticket.
        En bref ça compile pas, et le responsable du dépôt Github[1] de la société reconnaît ne pas savoir compiler le tout, et n'a pas l'air d'avoir envie d'essayer.

        Je suis sûr qu'il est possible de le compiler (après tout ce n'est que du C++), mais je n'ai clairement pas envie de passer du temps sans même savoir si cela sera rentable : donc je reviendrai plus tard pour voir si cela a changé.

        [1] à tout le moins, le gars de l'entreprise qui répond aux tickets : https://github.com/ONLYOFFICE/DocumentBuilder/issues/27

        PS : même si il y a des versions binaires disponibles qui fonctionnent, je ne les utiliserais pas car tant que je ne sais pas re-compiler le tout cela revient à du « closed-source » pour moi (n'étant pas hacker, seule la maintenance compte pour moi), et comme je n'ai pas trouvé d'alternative, il vaut mieux ne pas se créer une dépendance.

    • [^] # Re: Compilation du projet

      Posté par . Évalué à 2 (+1/-0).

      Bonjour lem_mel,

      Merci pour l’intérêt que vous portez aux solutions de ONLYOFFICE.

      Je tiens à vous apporter en réponses les précisions suivantes :

      Document Builder est-il réellement un produit libre et complètement fonctionnel par lui-même ?

      A partir de la version 5.3 ONLYOFFICE Document Builder est un produit complètement libre et gratuit, distribué sous les termes la licence GNU AGPL v.3. La remarque "30j d'essai" sur la page dédiée à DocBuilder, qui malheureusement n’a pas été encore actualisée, se rapporte aux versions précédentes. Nous allons mettre à jour les infos affichées sur le site dans les plus brefs délais.

      Quelqu'un est-il parvenu à compiler le tout ?

      Suite à votre échange avec l’un de nos développeurs sur GitHub, nous confirmons qu’aujourd’hui il n’y a pas de moyen de compiler tout le projet. Jusqu’à présent ce n’était pas tellement demandé par la communauté de nos utilisateurs. Votre demande sera prise en compte par notre équipe. Nous l’évaluerons et accorderons une priorité suffisante. Nous vous en tiendrons informé. Si vous continuez les recherches à ce sujet, n’hésitez pas à nous faire part de leur avancement. Votre contribution est très appréciée !

      • [^] # Re: Compilation du projet

        Posté par . Évalué à 8 (+6/-0).

        Je ne comprends pas : comment peut-on prétendre qu'un logiciel est libre s'il n'y a pas moyen de le compiler ?

        • [^] # Re: Compilation du projet

          Posté par (page perso) . Évalué à 3 (+1/-0).

          Un logiciel est dit libre s'il respecte les "4 libertés fondamentales" : exécuter, étudier, modifier, distribuer.

          Ce ne sont que des finalités, et tant que rien n'empêche l'une d'elle, c'est un logiciel libre. Mais rien n'est dit dans les licences concernant des moyens à mettre en oeuvre pour faciliter ces tâches, en l'occurrence ici, la compilation.

          • [^] # Re: Compilation du projet

            Posté par (page perso) . Évalué à 3 (+1/-0).

            Modifier != éditer des fichiers textes

            Explique nous comment modifier un logiciel sans pouvoir le compiler :-)
            (sauf si c'est un langage interprété bien entendu).

            - patcher le binaire
            - modifier des ressources annexes (fichier d'aide, image, etc)
            C'est très limitant.

            • [^] # Re: Compilation du projet

              Posté par (page perso) . Évalué à 2 (+2/-2). Dernière modification le 25/08/19 à 01:48.

              Mais tu peux le compiler. Rien ne l'interdit (sinon, ce ne serait pas libre :p). C'est juste loin d'être évident ;)

              • [^] # Re: Compilation du projet

                Posté par (page perso) . Évalué à 4 (+2/-0).

                Mais tu peux le compiler. Rien ne l'interdit (sinon, ce ne serait pas libre :p). C'est juste loin d'être évident ;)

                Il y a probablement un mot que tu ne comprends pas dans :

                nous confirmons qu’aujourd’hui il n’y a pas de moyen de compiler tout le projet.

                Que ce soit possible chez eux ne le rend pas libre.
                Source ouvert, pas plus (donc pas bien utile en l'état. Je suppose qu'ils font rapidement corriger le tir).

                • [^] # Re: Compilation du projet

                  Posté par (page perso) . Évalué à 3 (+4/-3).

                  Il y a probablement un mot que tu ne comprends pas dans :

                  nous confirmons qu’aujourd’hui il n’y a pas de moyen de compiler tout le projet.

                  Je comprends très bien. Mais je persiste, tu as le droit de le modifier. L'étape de compilation ne rentre pas dans la définition d'un logiciel libre.

                  Quand ils disent qu'il n'y a pas de moyen de compiler tout le projet, dans la mesure où ils fournissent des binaires, il faut bien sur comprendre qu'il n'y a pas de moyen simple et que le processus actuel est tellement complexe que même les développeurs chez eux ne savent pas comment ça marche.

                  Mainetant, je le répète : rien, dans une licence libre, ne parle de moyen de compilation. Rien n'impose de mettre en place un script ou une procédure qui permette de compiler le projet en lançant un make ou ./compile.sh ou autre joyeuserie de ce genre. Rien n'indique qu'il faille préciser les versions des compilateurs, etc… Rien n'indique qu'il faille documenter le processus de compilation.

                  C'est con, je te l'accord, mais une licence libre donne le droit de modifier un logiciel. Donne un droit, c'est donc donne une autorisation, pas donner la possibilité de le faire simplement.

                  Cette astuce est d'ailleurs utilisée plus ou moins sciemment par différents projets, notamment lorsque l'éditeur vend des prestations de service autour du projet. Le projet est libre, mais la documentation pour l'installer et le configurer est pour le moins minime quand elle n'est pas inexistante.

                  • [^] # Re: Compilation du projet

                    Posté par (page perso) . Évalué à 0 (+0/-2).

                    « c'est libre même si c'est quasi impossible » je trouve que c'est franchement bidon.
                    En gros c'est libre uniquement pour Superman.
                     

                    Je tente une analogie :
                    Pour s'amuser on te met des menottes, on t'enferme dans une cave d'une friche industrielle, et on te dit « bon ben nous on s'en va, tu es libre de partir ».
                    Selon tes arguments, tu es libre.

                    Exemple moyen car la situation est créée volontairement.
                     

                    Meilleure analogie :
                    Tu es né dans une famille profondément dysfonctionnelle. Tu as subi des coups, des abus sexuels, de profonds manques d'affection.
                    Mais tu es libre de devenir une personne parfaitement épanouie.

                  • [^] # Re: Compilation du projet

                    Posté par (page perso) . Évalué à 5 (+4/-1).

                    rien, dans une licence libre, ne parle de moyen de compilation

                    J'ai pris la première qui m'est venue à l'esprit : la licence « GNU General Public License »

                    Version 2 :
                    « For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable »

                    Version 3 :
                    « The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. »

                    Que ce ne soit pas explicitement indiqué dans d'autres licences, ok. Mais ton argumentation est globalement fausse.

                    • [^] # Re: Compilation du projet

                      Posté par (page perso) . Évalué à 3 (+3/-2).

                      Que ce ne soit pas explicitement indiqué dans d'autres licences, ok. Mais ton argumentation est globalement fausse.

                      J'aurai du formuler ma phrase ainsi : "rien n'indique, pour qu'une licence soit libre", cela aurait peut être éviter cette petite incompréhension.

                      Je parle des conditions pour qu'une licence soit considérée comme libre, tu prends une licence en particulier. Ce qui fait que ce n'est pas mon argumentation qui est globalement fausse… mais la tienne, qui essaie de faire une généralité à partir d'un cas particulier !

                      Maintenant, interprétation personnelle, qui est peut-être erronée mais j'essai de rester pragmatique. Cette définition de code source s'applique à qui ? Légalement, à ceux qui redistribueraient (en dehors de l'auteur) le logiciel, car seul l'auteur peut légalement faire respecter la licence. Et je vois mal un auteur se faire un procès à lui même ;)

                      Selon les définitions de la GPL, le code source fourni est incomplet ici car "incompilable" (ou très très difficilement). Il y a donc bien une violation de la licence (mais qui est sans effet, puisque l'auteur de la violation est l'auteur du logiciel), mais cela ne change rien au caractère libre du logiciel.

            • [^] # Re: Compilation du projet

              Posté par (page perso) . Évalué à 3 (+1/-0).

              • patcher le binaire

              Alors là il faut faire appel au puissant Superzap :)

              * Ils vendront Usenet^W les boites noires quand on aura fini de les remplir.

          • [^] # Re: Compilation du projet

            Posté par . Évalué à 3 (+1/-0).

            Un logiciel est dit libre s'il respecte les "4 libertés fondamentales" : exécuter, étudier, modifier, distribuer.

            Je sais. Cependant comment est-ce que je fais pour être raisonnablement sûr que le code source fourni est le bon ? Pourvoir le compiler me parait un bon moyen de m'en assurer, sinon je n'ai que la bonne parole de l'éditeur, exactement comme quand il ne fournit que l'exécutable.

            J'en reste à mon avis initial, un stock de fichiers source n'a de réalité en tant que code source de tel logiciel que si, à partir de ces fichiers source, il est possible de construire soi-même l'exécutable. Si ce n'est pas possible, le code source est au mieux incomplet donc non fourni. Ce qui contrevient aux libertés 2, 3 et 4.

        • [^] # Re: Compilation du projet

          Posté par (page perso) . Évalué à 6 (+3/-0). Dernière modification le 24/08/19 à 10:22.

          Un logiciel libre est défini par les 4 libertés. Si on rajoute des contraintes supplémentaires, ça peut devenir assez vite difficile :

          • développement ouvert et accès au code pour tous ? Ce n'est pas un critère pour être libre, même si c'est souvent le cas pour des logiciels libres.
          • capacité à être recompilé ? On a déjà un exemple ici, mais on peut penser à d'autres projets qui sont dépendants d'une chaîne de compilation particulière non libre (pas mal de choses sous Windows et/ou de Microsoft) ou d'une dépendance non-libre et mal isolée au niveau de la compilation
          • capacité à être recompilé de manière reproductible ? C'est bien de recompiler/réempaqueter mais qu'est-ce qui garantit que c'est strictement la même chose, bit à bit ? Cf https://reproducible-builds.org/
          • non dépendance sur un microcode non-libre ? Y compris sur un microcode CPU ? Ça va commencer à raréfier beaucoup le nombre de logiciels libres concernés.
          • non dépendance sur du matériel non-ouvert à spécifications non libres ?
          • traduit en moldave ?
          • écrit dans un langage libre ?
          • non-écrit à des fins militaristes ou par un pays que je n'aime pas ou une entreprise qui ne me plaît pas ?
          • fourni sans tests ? Sans doc ?
          • l'Emacs originel de RMS pour PDP-11 est-il un logiciel libre, vu que je n'ai pas les moyens de le recompiler ? Ou le premier compilateur de la série GCC ?
          • etc., etc.

          Ceci étant dit, ça reste dommage de ne pas pouvoir le recompiler. À voir si c'est un petit problème localisé, quelques points bloquants ou des gros soucis genre des pans entiers manquants.

          • [^] # Re: Compilation du projet

            Posté par . Évalué à 7 (+6/-1).

            Un logiciel libre est défini par les 4 libertés. Si on rajoute des contraintes supplémentaires, ça peut devenir assez vite difficile :

            Il ne s'agit pas de rajouter des contraintes, juste de pouvoir exercer les libertés garanties par la licence. Si le code source fournit ne compile pas, le logiciel n'est pas modifiable. On ne peut même pas tester les modifications faites sur le code source fourni.

        • [^] # Re: Compilation du projet

          Posté par (page perso) . Évalué à 4 (+2/-1).

          Libre, pas libre ou paralibre, un logiciel opensource qui ne compile pas, ça ne sert à rien.

          Incubez l'excellence sur https://linuxfr.org/board/

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.