Lstu sort en version 0.08

Posté par (page perso) . Édité par Davy Defaud, Benoît Sibaud et ZeroHeure. Modéré par Xavier Claude. Licence CC by-sa
23
18
juin
2017
Internet

Plus de trois ans après ses débuts, Lstu arrive en version 0.08 et l’on peut dire qu’il s’en est passé des choses sous le capot !

Petite rétrospective sur ce raccourcisseur d’URL qui devient grand…

Sommaire

Mais qu’est‐ce que Lstu ?

Lstu, Let’s Shorten That Url, est un service Web de raccourcissement d’URL. Comme bit.ly ou goo.gl, mais en Libre (licence WTFPL).

Les débuts

Lstu est né d’une soirée de septembre 2013 où j’avais envie de coder un truc, vite fait, bien fait. Enfin, surtout vite fait. Il y a des gens qui aiment faire du tricot ou de la dentelle, eh bien, moi, c’est le code.

Si l’on regarde les commits, on peut voir que quelques correctifs mineurs ont rapidement été apportés… et puis, plus rien pendant des mois. En effet, Lstu n’était qu’un exercice plutôt qu’un véritable projet.

Et pourtant

De loin en loin, des fonctionnalités ont commencé à se rajouter.

En février 2014, c’est la possibilité de choisir le texte de l’URL raccourcie. En effet, il est plus simple au niveau communication visuelle (un flyer, une affiche, à l’oral…) de donner :

En mai 2015 (j’avais bien dit « De loin en loin »), c’est une page affichant les statistiques de ses URL raccourcies qui fait son apparition, ainsi qu’une vision « admin » de toutes les URL, une page de description de l’API et la possibilité d’utiliser Lstu dans un sous‐répertoire de son domaine (genre https://exemple.org/lstu/). À noter que l’internationalisation, présente depuis les tout débuts, passe aux fichiers gettext (.po).

Au cours de la période allant de mai à septembre 2015, la documentation s’étoffe, des fichiers d’initialisation et de configuration nginx sont fournis… Le but est clairement de simplifier la tâche de ceux qui voudraient l’installer chez eux.

Une autre fonctionnalité apparaît aussi en septembre 2015 : la vérification de noms de domaine de l’URL à raccourcir, ainsi que ceux de ses redirections, s’il y en a, auprès du service SpamHaus.

En effet, des spammeurs utilisent assez souvent l’instance officielle et l’instance de Framasoft pour cacher leurs liens moisis (du hameçonnage la plupart du temps). La vérification des noms de domaine, ainsi qu’une limitation du nombre de redirections autorisées (certains liens de hameçonnage ont un nombre de redirections impressionnant), permet de limiter l’utilisation de Lstu pour un tel usage.

La version 0.07 de Lstu, sortie en décembre 2016, a notamment apporté :

  • un logo (ça manquait) ;
  • un système de thèmes : plus besoin de « forker » ou de réappliquer ses modifications pour avoir un thème personnalisé ;
  • un nouveau thème basé sur le cadriciel CSS Milligram, plus léger que Twitter bootstrap. Ce thème devient le thème par défaut ;
  • un système de bannissement pour limiter l’utilisation à trois raccourcis par seconde (toujours pour lutter contre les spammeurs) ;
  • un système de cache (une centaine de redirections sont stockées en cache) pour améliorer les performances ;
  • la traduction en occitan, qui s’ajoute au français et à l’anglais déjà présents ;
  • le lancement de tests fonctionnels en intégration continue grâce à GitlabCI !

Et enfin, la 0.08 !

Sortie à peine deux mois après la 0.07, cette version ne manque toutefois pas d’intérêt :

  • possibilité d’utiliser Piwik pour comptabiliser le nombre de fois où quelqu’un a utilisé un lien raccourci ;
  • possibilité d’utiliser une file d’attente des tâches pour incrémenter les compteurs de visite (Lstu utilisant habituellement une base SQLite, incrémenter le compteur directement à la visite peut ralentir le fonctionnement de Lstu, SQLite ne permettant pas les accès concurrents) ;
  • possibilité d’utiliser une authentification LDAP ou se basant sur un fichier htpasswd : seuls les utilisateurs authentifiés pourront raccourcir des URL, l’accès à l’URL raccourcie étant permis à tout le monde ;
  • prise en charge de PostgreSQL pour la base de données ;
  • possibilité d’utiliser plusieurs fois la même installation de Lstu avec des fichiers de configuration différents (installez une fois, utilisez plusieurs instances différentes) ;
  • ajout d’un système de liste blanche au système de blocage/bannissement ;
  • traduction en breton.

Miscellanées

L’instance officielle ne contient que 5 586 liens raccourcis au 17 juin 2017, mais son utilisation se répand : il a été rapporté que des courriels internes de certaines institutions publiques contenaient des liens Lstu (eh non, ce n’étaient pas des pourriels :P).

L’instance de Framasoft, mise en service en 2015 contient en revanche 75 679 liens raccourcis au 17 juin 2017.

Une instance modifiée de Lstu a été développée et mise en place peu après la sortie de la version 0.08 pour permettre à l’auteur, Olivier Saraja, de créer des cartes de téléchargement de ses livres numériques. Le lien contenu sur ces cartes est valable un mois après la première utilisation. Autres modifications : la possibilité de créer plusieurs liens raccourcis à partir d’une seule URL et la génération d’un code QR pour chaque lien. Ces modifications sont actuellement dans la branche dl-cards de Lstu.

Après cette version 0.08, le développeur s’est éloigné dans le soleil couchant pour s’occuper de Lutim… Mais ceci est une autre histoire.

  • # D'où viens ce nom ?

    Posté par (page perso) . Évalué à 0.

    On peut savoir ce que veux dire Lstu ? Je suis curieux :)
    Merci pour ton travail vite fait. Je ne connaissais pas.

    « Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. »

    • [^] # Re: D'où viens ce nom ?

      Posté par . Évalué à 2.

      "Let's Shorten That Url"

      Pas trop dur à trouver, c'était la première phrase sur la page d'accueil du dépôt.

      Cette signature est publiée sous licence WTFPL

    • [^] # Re: D'où viens ce nom ?

      Posté par . Évalué à 1.

      Pour ceux qui se demanderaient en quel langage lstu a été écrit, c'est en Perl. Et pour ceux qui voudraient critiquer, on notera que le développeur a eu la bonne idée de faire appel à la libpq.

      Cette signature est publiée sous licence WTFPL

      • [^] # Re: D'où viens ce nom ?

        Posté par (page perso) . Évalué à 3.

        Ceux qui voudraient critiquer à cause du langage n'ont qu'à faire le leur dans un autre langage :)

        Merci Framasky pour ces logiciels et le temps que tu y passes

        • [^] # Re: D'où viens ce nom ?

          Posté par (page perso) . Évalué à 4.

          De rien :-)

          Je ne vois vraiment pas qui pourrait critiquer Perl, le meilleur langage de l'univers connu ;-) (Comment ça je suis pas objectif ‽ :D)

          It's a fez. I wear a fez now. Fezes are cool !

          • [^] # Re: D'où viens ce nom ?

            Posté par (page perso) . Évalué à 6.

            Je ne vois vraiment pas qui pourrait critiquer Perl, le meilleur langage de l'univers connu

            Ah merde, j'avais un bon à priori sur toi.

            « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

          • [^] # Re: D'où viens ce nom ?

            Posté par (page perso) . Évalué à 3.

            Je ne vois vraiment pas qui pourrait critiquer

            C'est pas ici qu'on a l'esprit critique ;)

            « Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. »

          • [^] # Re: D'où viens ce nom ?

            Posté par . Évalué à 2. Dernière modification le 19/06/17 à 14:07.

            Je ne vois vraiment pas qui pourrait critiquer

            Disons que Perl est une icone du libre alors ce serait comme critiquer les Beatle. Celui qui démarre aujourd'hui un projet libre en Perl est probablement un développeur du type de "Richard Stallman". Un ancien au grand combat du libre qui mérite tous le respect.

            • [^] # Re: D'où viens ce nom ?

              Posté par (page perso) . Évalué à 5.

              Alors que j'ai commencé à développer en… 2009 😋 Question ancien, c'est pas encore ça 😀

              Nan mais c'est surtout le framework Mojolicious qui fait que j'utilise Perl à chaque projet web… mais pas que ! Un user-agent, un parser DOM, plein de petites fonctions super sympa font que j'utilise Mojolicious même pour des scripts 🙂

              It's a fez. I wear a fez now. Fezes are cool !

          • [^] # Re: D'où viens ce nom ?

            Posté par . Évalué à 1.

            j'ai pensé comme toi pendant 10ans. Puis j'ai fait du python :)

  • # remarque

    Posté par . Évalué à 4.

    SQLite ne permettant pas les accès concurrents)

    Plus précisément, SQLite ne permet qu'un écrivain à la fois mais autant de lecteurs que voulu.
    cf : http://www.sqlite.org/lockingv3.html#writing

Suivre le flux des commentaires

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