1

Après plusieurs années à travailler sur le code de yAronet, je viens de le publier sur GitHub sous licence AGPL smile

C'est une grosse étape dans le projet pour moi, et j'espère que ça permettra à certains d'entre vous de donner un coup de main, ou à d'autres de faire leur propre instance de yAronet pour des besoins persos. Ce sera peut-être aussi l'occasion de découvrir tout un tas de nouvelles failles de sécurité, je compte sur vous pour être raisonnables dans votre façon de les signaler grin

J'ai passé les quelques derniers jours à essayer de faire en sorte qu'il soit possible de faire fonctionner yAronet sur une autre machine que la mienne ou le serveur de production, ce qui n'est pas une mince affaire après avoir passé des années à ne pas avoir à me soucier de configurations différentes de la mienne. C'est probablement loin d'être parfait, donc si des choses ne fonctionnent pas ou vous paraissent obscures après avoir lu le fichier INSTALL.md n'hésitez pas à en parler ici ! (ou créer une issue sur GitHub, au choix)

Si vous appréciez l'initiative, une petite star sur GitHub ça fait toujours plaisir hehe
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

2

la vache! ceci est une révolution! merci!

aaah on va enfin pouvoir ajouter des options dans le profil!
r3c/yaronetGitHubLightweight, traditionnal but full-featured PHP bulletin board - r3c/yaronet

3

C'est du faux open-source : y'a pas le code pour les gemmes embarrassed

(plus sérieusement, joli cadeau d'anniversaire top)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

4

Non en effet, et comme je ne vais pas m'amuser à maintenir 2 branches pendant trop longtemps, il va très probablement bientôt disparaître tongue

En vrai il y a d'autres différences, par exemple la version publiée ne possède pas de lien vers yNews ni vers les blogs (qui ne font pas partie du code). Je vais quand même publier cette version pour information, et surtout pour que GitHub devienne le seul dépôt plutôt que conserver ma copie perso.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

5

Wow !

6

sur bitbucket les repos privés sont gratuits. et tu peux avoir plusieurs remote dans ta copie de travail locale.

du coup, tu peux push master sur github et bitbucket, et les branches privées uniquement sur bb.

7

pencil

8

Tu peux faire les gemmes & autre truc comme un plugins, donc tu garde ca séparement, et ce n'est pas dans la version publique, c'est a l'install ici (sur ce serveur) que c'est ajouté

Bien sur il semble que le moteur ne supporte rien de ca a l'heure actuelle, mais tu peux aussi gerer les differences sous forme de patchset.
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

9

Sauf que la AGPL n'autorise pas ça.
avatar

10

Il est propriétaire du code, donc si.
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

11

Ha oui en effet, dans ce cas la ça marche, mais que pour lui.
avatar

12

enfin l'AGPL n'interdit pas les plugins (et ne contamine pas les plugins non plus)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

13

Cooooooooooooooooooooooooool top
Bon, bah comme ça a été dit, on va en faire des options dans le profil :3
avatar

14

Fais-toi plaisir, c'est ici ! tongue (et je me rends compte qu'en changeant la coding style ça a laissé tous les tabs qui n'étaient pas en début de ligne, du coup c'est assez atroce par endroits grin)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

15

Top !
avatar
"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches Meilleur smiley = #helico# Obligatory XKCD

16

Bon ben j'ai une jolie page blanche grin

Zeph: il y a des fonctions de type RPC ou autre?
Si je veux faire des "plugins" sans fait des patchs monstrueux dans le dit code (pour integrer dans un blog par exemple... xD) c'est faisable ou ca demande de faire beaucoup de modifs dans le code existant?
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

17

RPC pas vraiment. Il y a certains appels qui peuvent te retourner une page partielle, ce sont ceux qui sont utilisés pour les fonctionnalités "ajax" du site, mais toutes les pages n'en possèdent pas. Toutes les pages qui peuvent être appelées partiellement peuvent être identifiées via dossier fragment. L'approche que j'ai choisie consiste à mettre dans ce dossier les fragments de page destinés à être inclus dans d'autres, puis dans "frame" et "html" les inclusions de ces fragments pour créer respectivement des sections de pages qui peuvent être affichées individuellement (par exemple celle-ci pour "mes sujets", constituée à partir de ce fragment et ce cadre), et les pages complètes. S'il est utile de séparer des pages existantes a priori ça n'est pas un souci, il faut extraire le code de la page "html" dans des fichiers "fragment" et "frame" correspondants.

Bon sinon c'est pas encore la ruée vers les étoiles sur ce repo grin
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

18

C'etait plutot pour pousser d'un cote et de l'autre les infos (poster une vue (partielle?) d'une entrée de blog vers un nouveau topic, et que les reponses sur le blog ou le forum soient identiques (et que l'un et l'autre se sync qu'au moment d'un edit/post)





Je progresse, des pages qui manques et problemes de droits (pourtant apache a droits en ecriture sur les dit dossier, bizzare)

Ceci dit la page blanche était dur au fichier config qui était invalide (parse error pour PHP) et était ignoré silencieusement, que ca soit le log d'erreur d'apache ou un fichier log de yN

Ca avance, ca avance, j'ai maintenant cette erreur:


./library/deval/parser.php): failed to open stream: No such file or directory


Je ne vois rien dans la doc qui dit qu'il faut faire un truc avec cette lib, et en effet "parser.php" est manquant dans mon cas.

Oui je suis en mode "a la main" je n'ai aucun des outils pour l'install "auto"
Ok donc node n'est *PAS* optionel, il est 100% obligatoire car il le faut pour "compiler" deval et son "parser.php"
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

19

C'est un oubli dans la doc, tu peux récupérer ce fichier dans la release de Deval pour ne pas avoir à le compiler :
r3c/devalGitHubDeferred Evaluation Templates. Contribute to r3c/deval development by creating an account on GitHub.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

20

\o/

Par contre, il semble que tu va avoir du boulot avec php 7.2 xD

/home/godzil/public_html/yn/library/queros/queros.php:218
The each() function is deprecated. This message will be suppressed on further calls

Hmmm

"Hello Godzil,

You just created your user account on yAronet.cOm, next step is to activate it! Click on the link below or sign-in using your login and password, then use this security code when asked: .

https://xxxx/~godzil/yn/users/1/active?code

See you soon!"

Va deja falloir personaliser certain texte xD

Et non il n'y a aps de code dans l'email.

J'ai raté un truc dans la config? xD
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

21

Joli proof of concept, Godzil !
Je viens de jeter un oeil au code, c'est impressionnant au niveau organisation. Moi qui fais du PHP "à l'ancienne", je reste un peu perdu, mais c'est super propre. Je ne sais pas dans quel état yAro t'avait laissé les choses, mais j'ai l'impression que t'as fais un boulot monstre O_o
avatar

22

oui j'ai eu cette impression aussi grin

boulot de monstre, tout est clean. un vrai pro ce Zeph.

23

Pareil, je me suis régalé à lire, et pourtant je connais pas le PHP.
Mais c'est le genre de code que tu comprends quand même, parce que tu devines quand tu ne sais pas.
J'ai pas contre été étonné des commentaires minimalistes. Je dois être du genre trop bavard à ce niveau, j'avoue.

Félicitations pour ce travail de cette envergure et de cette qualité, une très belle perf ! top

24

(tout pareil que Folco !)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

25

Merci hehe Je ne pense pas que le code soit pourtant un modèle, mais tant mieux si c'est lisible, ça rendra vos contributions plus faciles smile (mais oui ça m'a pris un certain temps grin)

Godzil : j'ai corrigé la documentation manquante et je t'ai répondu sur GitHub directement. Pour l'e-mail c'est curieux je ne vois pas d'erreur évidente à première vue (pour info le code est ici et le contenu du mail ) ; je testerai depuis chez moi pour voir où ça peut coincer.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

26

Merci smile


Quelques détails (qui je pense peuvent faire la différence):

Il serait probablement une bonne idée de:
- Mettre au moins un forum par défaut
- Rendre l’icône IRC optionnelle (via config.php au pire, surtout qu'il amène sur ton serveur IRC et #yaronet par défaut)
- Il y a pas mal de texte par défaut qui suit la logique de et configuration de yN: référence a "section bug" et autres choses du genre, comme il n'y a aucun forum par défaut ça ne fait aucun sens (en plus ça pointe donc vers une page qui n'existe pas!)
- Je n'ai pas trouvé comment mettre un forum par défaut pour tout le monde dans la tête de liste, j'ai du bidouiller la BDD pour ca..
- Je n'ai vu aucune option pour activer ou non le post anonyme dans le FC
- ni désactiver le FC
- Pouvoir dés-invisibiliser les admins. Je sais que tu n'aime pas ça, mais BEAUCOUP de forum veulent avoir les admins visibles.
- d'ailleurs c'est vraiment pas clair en tant qu'admin sur comment verrouiller un message
- J'aime bien le concept des "pages", mais leur utilisation est très sommaire actuellement et sans changer les URL se limite a Aide/Charte/Contacts. Peux être avoir un option "pages" pour lister celles ci
- et/ou un moyen de personnaliser la bottom bar/top bar pour ajouter des liens?
- Je pense comme pour le bouton IRC, certaines fonctions devrait pouvoir être optionnelles, comme mémo.
- Il pourrait être intéressant pour un forum voir un topic particulier d'avoir la possibilité d'autoriser des anonymes d'y poster (j'y parle/pense dans la logique d’intégrer un forum dans un blog par exemple comme moteur de commentaires, enfin il ne fait pas de mal non plus de devoir forcer l'incription pour poster)
- Peux etre une version de yAronet mono forum. La tel que l'interface est, on a exactement ce qu'il le yN actuel: un moteur multi forum, pour beaucoup d'installation la configuration:
Home -> Forum[s] -> Categories[s] est peut etre un peu trop, arriver directement sur un forum plutot que la home page actuelle serait potentiellement une bonne idée
- Il faudrai, je pense a terme qu'il y ai une interface d'admin qui ne demande pas de changer des fichiers a la main pour certaines options



Je ne dit pas qu'il faut que toi tu fasse tout ca, c'est juste une liste de choses qui je pense peuvent rendre le projet plus populaire. Chacun des points peuvent venir de pull requests et je pense que tu serai content que ca arrive.

Sinon on se sent vraiment comme a la maison, mais sans y etre, c'est bizzare xD


Et je suis pas sur que les optims soit vraiment utiles #sueur# je n'en ai aucune d'active, ok la BDD est vide, mais 4ms pour la génération des pages en moyennes, je pense que c'est plutôt raisonnable quand on voit certains monstres.... xD




Au passage, meme si non critique, je suis pas sur que ce fichier ai de raison d'exister dans le depot officiel de yN:

yaronet/src/static/analytic/google.html

grin
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

27

Godzil (./26) :
- Rendre l’icône IRC optionnelle (via config.php au pire, surtout qu'il amène sur ton serveur IRC et #yaronet par défaut)
- Il y a pas mal de texte par défaut qui suit la logique de et configuration de yN: référence a "section bug" et autres choses du genre, comme il n'y a aucun forum par défaut ça ne fait aucun sens (en plus ça pointe donc vers une page qui n'existe pas!)
En effet, je corrigerai.

Godzil (./26) :
- Je n'ai pas trouvé comment mettre un forum par défaut pour tout le monde dans la tête de liste, j'ai du bidouiller la BDD pour ca..
C'est un peu un hack : la liste des forums par défaut est la sélection du compte qui a l'ID "1", c'est à dire a priori l'admin du site. Tu peux donc te logger avec ce compte et choisir tes forums favoris avec l'option disponible sur la page d'accueil, et ça prendra effet pour tout le monde.

Sinon pour tout le reste, ce sont des bonnes idées, mais le but derrière le passage en open source c'est aussi que vous puissiez mettre la main à la pâte, pas de me faire une TODO list deux fois plus grosse qu'avant grin

Pour la performance je pense que ta machine est plus puissante que le serveur de production de yN, mais activer les caches permet de diviser les temps de génération par 10 environ, donc sur le serveur que j'utilise c'est pas vraiment une option ^^ (et puis sans les activer ça veut dire que les templates et les textes localisés sont parsés à chaque requête, c'est quand même un peu overkill).
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

28

Ne te méprends pas, c’est mon idée d’avoir une liste et d’en faire une todo qui n’est pas pour toi mais pour tout ceux qui veulent aider!
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

29

Ça ne fonctionne toujours pas les mails d'inscription chez toi ? Je viens de tester sur une autre instance et je n'ai pas de souci, donc pour le moment je ne vois pas trop d'où ça peut venir.

[edit] À moins que ça ne soit une incompatibilité avec PHP 7.2, parce que je n'ai jamais testé avec cette version pour le moment.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

30

Pas eu le elle de regarder pour l’instant et j’ai une connexion en mousse la tout de suite ça n’aide pas :/
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.