1 points par GN⁺ 1 일 전 | 1 commentaires | Partager sur WhatsApp
  • Le dépôt Gleam, qui vise des systèmes type-safe et évolutifs, est aussi disponible sur Tangled
  • Il ne compte qu’une seule branche par défaut, main, avec environ 11 000 commits, 254 étoiles et 2 forks
  • Le code du dépôt est majoritairement en Rust 92,9 %, suivi de JavaScript 3,6 %, Gleam 1,8 %, etc.
  • Du compilateur et du serveur de langage au compilateur WASM, au générateur de code Erlang, au formateur et aux projets de test, tout est géré dans un seul dépôt
  • Gleam n’appartient pas à une entreprise : c’est un projet soutenu par des sponsors, et il est possible de soutenir à la fois le projet et les membres de son équipe cœur

Structure du dépôt

  • gleam.run/gleam est le dépôt Tangled du langage Gleam
  • Ses principaux composants sont les suivants
    • compiler-cli, compiler-core, compiler-wasm
    • language-server, erlang-generation, erlang-term-format
    • format, hexpm, gleam-bin
    • benchmarks, documentation, paquets communautaires et projets de test liés au compilateur
  • main est la seule branche et la branche par défaut, et aucun tag n’est publié

Répartition des langages et méthodes de clonage

  • La répartition par langage est Rust 92,9 %, JavaScript 3,6 %, Gleam 1,8 %
  • HTML et CSS représentent chacun 0,4 %, Erlang et Shell chacun 0,3 %, et TypeScript, Makefile, Dockerfile, Elixir et PowerShell sont également inclus
  • Le dépôt peut être cloné en HTTPS ou en SSH, et les téléchargements aux formats tar.gz et .zip sont également pris en charge
  • Sur un Tangled knot auto-hébergé, l’URL de clonage peut varier selon la configuration

Travaux de développement récents

  • Les commits récents incluent des améliorations de performance pour le formateur et la génération de code JavaScript, ainsi qu’une correction du code Erlang généré pour les externals avec des arguments dépréciés
  • Le serveur de langage intègre des changements ajoutant le nom du type dans le titre de l’action de génération de code pour les variants, ainsi qu’une action de code pour convertir la base des nombres
  • Les nombres négatifs dans différentes bases sont désormais autorisés, et les formulations des suggestions du compilateur et des avertissements todo ont aussi été améliorées
  • Lorsque HEXPM_READ_API_KEY est défini, la recherche de dépendances Hex et les requêtes de téléchargement sont authentifiées
    • Cela permet de bénéficier de limites de requêtes par utilisateur plus élevées, plutôt que de limites strictes par IP

Gouvernance du projet

  • Gleam vise la construction de systèmes évolutifs sur la base de la sûreté de typage
  • Il n’appartient à aucune entreprise et fonctionne grâce au soutien de sponsors
  • La page de sponsoring de Gleam permet de soutenir le projet ou les membres de l’équipe cœur

1 commentaires

 
GN⁺ 1 일 전
Avis sur Hacker News
  • Cet article aurait vraiment besoin de beaucoup plus de contexte. En l’état, seules les personnes qui n’avaient déjà pas besoin d’une annonce peuvent le comprendre immédiatement.
    https://knowyourmeme.com/memes/curtains-for-zoosha

    • Gleam est un langage populaire auprès des personnes qui aiment Erlang ou Elixir, tous basés sur la machine virtuelle BEAM.
      Tangled est une alternative décentralisée à GitHub, construite au-dessus d’ATProto, comme Bluesky.
    • L’ironie, c’est que la page liée transforme un simple tweet republié en plusieurs écrans de « contenu », au point de se lire comme un article de presse people.
    • Dans ce cas, il faudrait peut-être commencer par expliquer ce qu’est ce site, c’est-à-dire HN (Hacker News).
  • J’ai découvert Tangled et essayé de m’inscrire, mais l’expérience nouvel utilisateur doit être peaufinée. J’ai saisi mon e-mail, passé la vérification et créé un nom d’utilisateur, mais je ne pouvais pas me connecter directement avec ce nom, et j’ai dû apprendre un protocole d’URL social peu familier.
    Pendant l’authentification, j’ai été redirigé vers un écran et une URL qui semblaient appartenir au projet, mais avec une image de marque et des couleurs totalement différentes, si bien que mon gestionnaire de mots de passe n’a pas fait le lien. Je suis particulièrement sensible aux frictions à l’inscription, mais le projet lui-même est intéressant, donc j’espère que ce retour sera utile.

    • Pour moi, le parcours d’inscription/connexion s’est limité à : « cliquer sur connexion → saisir mon handle Bluesky existant → entrer mon mot de passe sur l’écran de connexion du domaine bsky → cliquer sur approuver ». À ce stade, ce parcours semble plus optimisé.
      Comme l’application et l’identité ne sont pas étroitement couplées, ils ont mis en place une infrastructure séparée, mais il semble qu’ils n’aient pas encore consacré beaucoup de temps à la finition de l’interface. Si je n’ai pas créé de compte propre et que je ne peux pas me connecter avec un nom d’utilisateur, je me demande ce que je suis censé utiliser.
    • Dans mon cas, c’était encore pire : seule l’erreur Failed to complete sign up. Try again later. s’affichait.
  • Gleam est un langage intéressant qui vise une conception petite et soignée. J’ai rencontré l’équipe Gleam récemment à l’Ubuntu Summit, et leur présentation transmettait très bien cette philosophie de conception : rester petit et construire avec soin.
    Giacomo a dit qu’il avait animé lui-même toutes les transitions d’écran, et j’ai trouvé que la présentation elle-même était petite et minutieusement réalisée, ce qui renforçait encore le message principal.
    https://youtu.be/E6_JqYMeNqs
    https://discourse.ubuntu.com/t/gleam-and-the-value-of-small/...
    https://en.wikipedia.org/wiki/Gleam_(programming_language)

  • J’ai essayé d’exploiter mon propre serveur Knot sur Tangled : le dépôt était bien créé sur Knot, mais les changements ultérieurs n’apparaissaient pas dans Tangled.
    Knot disposait d’une connectivité IPv6, mais il a fallu activer plusieurs NAT IPv4 et même créer un enregistrement A factice pour que cela fonctionne de manière stable ; c’est un problème déjà connu : https://tangled.org/tangled.org/core/issues/494

  • Je me demande pourquoi ils ont choisi une Forge financée par du capital-risque plutôt que Codeberg. Cela ne semble pas très cohérent avec l’idée d’un « langage convivial ».

    • Être « sur Tangled » signifie en réalité publier des enregistrements ATProto sh.tangled.*. Ce n’est pas une structure qui vous rend dépendant de la société financée par du capital-risque derrière l’application web tangled.org ; l’application ne fait que lire des dépôts Git publiés via le protocole et les afficher joliment.
      D’autres applications ATProto lisant les mêmes enregistrements peuvent accéder aux mêmes informations. Le dépôt lui-même n’a pas non plus besoin d’être hébergé sur Tangled : il peut l’être directement sur un serveur prenant en charge Git, SSH, HTTP et WebSocket.
    • Je n’apprécie pas le mode de financement de Tangled, mais je pense qu’ATProto a un fort potentiel pour améliorer Internet. La communauté Gleam s’intéresse aussi beaucoup à ce protocole, donc cela nous a semblé approprié pour héberger un miroir du dépôt Gleam.
    • Gleam est toujours aussi présent sur GitHub. Ce n’est pas une migration officielle, simplement un ajout sur une Forge basée sur ATProto.
    • Il me semble très probable que cela ait été une condition d’un soutien financier, ce qui donne au final l’impression amère que la valeur centrale est l’argent plutôt que la communauté. Je vais plutôt me concentrer sur l’utilisation d’Elixir dans le projet.
  • J’ai essayé Tangled pour la première fois, mais il semble tellement buggé que l’usage réel est difficile. J’ai créé un dépôt, mais il renvoyait une 404 et je ne pouvais pas le voir ; j’ai aussi échoué plusieurs fois à me connecter, alors que je copiais-collais à chaque fois le même handle ATProto.
    Cela dit, je suis content de voir davantage d’équipes développer des alternatives à l’hébergement Git.

    • Au début de GitHub, la même chose se produisait aussi : les dépôts étaient créés de façon asynchrone, puis on était redirigé immédiatement. Ils apparaissaient après quelques secondes en actualisant, et si je me souviens bien, un écran intermédiaire a ensuite été ajouté pour attendre puis rediriger automatiquement.
  • J’ai cherché pendant un moment un service Git décentralisé et j’ai aussi commencé à en auto-héberger un, mais les fonctionnalités sociales manquaient. J’aimerais en savoir plus sur Tangled.

    • Radicle est un peu plus proche de cet objectif, avec auto-hébergement et fédération possibles. Cela dit, il est difficile de trouver une alternative dotée de la même gravité sociale que GitHub, et on ne sait pas encore si cet élément peut être séparé de la Forge ou s’il doit être fourni avec elle.
    • Pour l’instant, il semble qu’on ne puisse pas auto-héberger l’interface et l’API elles-mêmes. On peut exploiter Knot, le serveur Git, et Spindle, le runner CI, mais le service complet reste encore assez centralisé, même si des travaux sont en cours pour changer cela.
    • En dehors du fait que la société est enregistrée en Finlande, il était difficile de trouver qui l’exploite et comment elle est financée.
  • Je serais prêt à mettre un projet sur Tangled, mais l’ensemble de fonctionnalités nécessaire pour combler l’écart avec les services existants a encore beaucoup de chemin à faire. En particulier, les pannes de GitHub, même lorsqu’on veut simplement consulter un dépôt, sont devenues un obstacle trop important.

    • Je me demande pourquoi choisir Tangled simplement pour l’ambiance ATProto, plutôt qu’un Codeberg plus mature ou Forgejo ou Gitea, qui sont libres et open source.
    • Les frustrations liées aux pannes de GitHub m’ont clairement poussé à chercher un autre service.
  • Je me demande en quoi Tangled diffère de Codeberg et à quoi ressemble le processus de migration.

    • J’utilise les deux, et Tangled n’a pas encore certaines fonctionnalités importantes comme les dépôts privés et les branches protégées. En revanche, l’interface de Tangled me paraît plus agréable, tandis que Codeberg est assez lent dans mon environnement.
      Je n’utilise pas de CI/CD, donc je ne connais pas les aspects complexes d’une migration, mais pousser un dépôt vers un Knot hébergé est très simple. Exploiter son propre Knot n’est pas difficile non plus, et j’aime l’idée de posséder directement au moins l’un des serveurs auxquels j’envoie mon code.
    • La différence essentielle est que Tangled, contrairement à Forgejo ou Codeberg, est construit autour du protocole fédéré ATProto.
  • Il est difficile de savoir ce qu’est Tangled et de quel Gleam il est question.

    • Cela ressemble à un billet réservé aux initiés. Même en ouvrant le lien, il n’y avait presque rien qui semblait lié à Tangled, et c’est particulièrement extrême même parmi les posts HN destinés à un public restreint.
      L’indice dans l’URL indiquant Tangled était si subtil que je ne l’ai remarqué qu’après l’avoir ouverte pour la troisième fois, et la page d’accueil n’expliquait pratiquement pas ce qu’est Tangled.