Aller au contenu

« Réunion du 15-04-2025 » : différence entre les versions

De OSWiki
 
(25 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
= Changements du code de la semaine=
= Changements du code de la semaine=
Vincent Sylvester a fait une comparaison entre les fonctions LSL présentes dans l'API OpenSim et ce qui est sur le wiki Second Life. Bien entendu, Ubit Umarov a accepté les changements, il a simplement fait un peu de nettoyage.
Vincent Sylvester a fait une comparaison entre les fonctions LSL présentes dans l'API OpenSim et ce qui est sur le wiki Second Life. Bien entendu, Ubit Umarov a accepté les changements, il a simplement fait un peu de nettoyage. Félicitations à Vincent Sylvester pour ta première série de soumissions de code à OpenSimulator.
== Patchs pour fonctions LSL ==
== Patchs pour fonctions LSL ==
=== [https://wiki.secondlife.com/wiki/LlListFindListNext llListFindListNext] ===
=== [https://wiki.secondlife.com/wiki/LlListFindListNext llListFindListNext] ===
Ligne 19 : Ligne 19 :
  Function: float llGetHealth( key id );
  Function: float llGetHealth( key id );
* Renvoie l'état actuel d'un avatar ou d'un objet dans la région.
* Renvoie l'état actuel d'un avatar ou d'un objet dans la région.
* Ne supporte pas les objets et le résultat pour les avatars n'est pas comparable à celui de Second Life.
* Vincent Sylvester a envisagé de travailler pour que la fonction supporte aussi les objets, mais cela nécessite  beaucoup trop de mémoire.


===[https://wiki.secondlife.com/wiki/LlGetInventoryDesc  llGetInventoryDesc] ===
===[https://wiki.secondlife.com/wiki/LlGetInventoryDesc  llGetInventoryDesc] ===
Ligne 38 : Ligne 40 :
   Function: string llHMAC( string private_key, string msg, string algorithm );
   Function: string llHMAC( string private_key, string msg, string algorithm );
* Renvoie une chaîne qui correspond au hachage [https://fr.wikipedia.org/wiki/HMAC HMAC] encodé en Base64 de msg lors de l'utilisation de l'algorithme de hachage algorithm et de la clé secrète private_key.
* Renvoie une chaîne qui correspond au hachage [https://fr.wikipedia.org/wiki/HMAC HMAC] encodé en Base64 de msg lors de l'utilisation de l'algorithme de hachage algorithm et de la clé secrète private_key.
* Vincent Sylvester essaye de faire un patch qui prend en compte sha224[https://fr.wikipedia.org/wiki/SHA-2#SHA-224]. Il n'a pas encore réussi à le fusionner. Il a écrit ce patch à partir de zéro,  C# n'a pas de bibliothèque prête pour cet algo.


== Téléportation ==
== Bug de téléportation ==
* 🏗️
* [http://opensimulator.org/viewgit/?a=commit&p=opensim&h=f2379dc78502623a2161da8be86a61508ec9860e '''Commit f2379d'''] : mantis 9133 remplacement de certaines vérifications z < 0 par < Constants.MinSimulationHeight (-100) (NDRL : Petite erreur de mantis, en réalité c'est 9193).
* [http://opensimulator.org/mantis/view.php?id=9193 '''Mantis 9193'''] :  La téléportation vers un emplacement avec -ve Z est considérée comme illégale et redirige vers <128,128,128>. Donc une téléportation vers un emplacement avec une valeur de Z négative est impossible.
* Ubit Umarov a  modifié le code pour permettre les téléportations à z < 0.


= Avertissement =
= Avertissement =
Ligne 46 : Ligne 51 :
= Base de données =
= Base de données =
== Problème de connexion avec SQLite sur Mac (suite) ==
== Problème de connexion avec SQLite sur Mac (suite) ==
* 🏗️
* [[Réunion_du_25-03-2025#Problème_de_connexion_avec_SQLite_sur_Mac | Réunion du 25 mars 2025]]
* Cuga Rajal a poursuivi son travail sur SqLite pour macOS.
<pre>
  sqlite 3.7.5 - provoque un segfault lors du démarrage de macOS - même résultat en utilisant les versions 10.15, 10.14 et 15.4 de macOS.
  sqlite 3.17.0 - Le système d'exploitation fonctionne sans plantage mais génère des erreurs lors des opérations sqlite. Impossible de se connecter - même résultat en utilisant  les versions  10.15, 12, 15.4 de macOS.
  sqlite 3.39.4 - Même erreur que 3.17.0. Lance des erreurs pendant les opérations sqlite. Impossible de se connecter - même résultat si l'on utilise la cible de construction 10.15, 12, 15.4.
  sqlite 3.43.2 - qui vient avec macOS 15.4 - Opensimulator démarre sans erreur.
</pre>
* Vincent Sylvester pense qu'il est nécessaire d'utiliser une dylib totalement différente pour les composants liés à ARM.  Il faudrait compiler des bibliothèques séparées pour x86 et ARM. 
* Comme c'est aussi instable pour Raspberry Pi qui utilise des processeurs basés sur l'architecture ARM, quelque chose dans le matériel ARM pose problème. D'ailleurs, quelqu'un a rapporté avoir fait une image docker sur Raspberry Pi et avoir échoué.
* Gavin Hird explique qu'Apple a décidé de ne plus prendre en charge certaines fonctionnalités ou compatibilités pour Sonoma [https://fr.wikipedia.org/wiki/MacOS_Sonoma] et Sequoia [https://fr.wikipedia.org/wiki/MacOS_Sequoia] dans la version de Xcode (l'IDE d'Apple) [https://fr.wikipedia.org/wiki/Xcode] utilisée pour construire le composant. De plus, ce support a également été retiré pour les systèmes Intel. Bien que le support système ne soit pas présent à l'exécution, il est possible de compiler le composant, mais pas de l'exécuter.
* Donc une version plus récente doit être construite pour qu'il fonctionne sur une version 14.5 (Sonoma) et  une version 15.4 (Sequoia) ou plus.


= Informations diverses=
= Informations diverses=
Ligne 57 : Ligne 73 :
* osgrid semble de retour. Ce sera peut-être un peu instable pendant un moment.
* osgrid semble de retour. Ce sera peut-être un peu instable pendant un moment.
* Cuga Rajal n'a pas pu faire d'IAR pour son inventaire avant réinitialisation d'OSGrid.
* Cuga Rajal n'a pas pu faire d'IAR pour son inventaire avant réinitialisation d'OSGrid.
* La grille n'est pas ouverte pour tout le monde, seulement pour certains comptes.


=== Les avatars===  
=== Les avatars===  
* 🏗️
* Actuellement, quand on se reconnecte à Osgrid, Ruth(avatar par defaut) apparaît.
== Région d'accueil de la réunion ==
* Les entrées des données du dossier d'inventaire ont été nettoyées. Les parties du corps et les vêtements de base de l'avatar ont été oubliés.
* Il faut copier le contenu des parties du corps et des vêtements dans le dossier principal à partir de la bibliothèque OpenSim, puis porter les 6 items.
 
== Bug sur la région d'accueil de la réunion ==
=== Les avatars ===
=== Les avatars ===
* Les  avatars se chargent mal à  l'arrivée.
* Les  avatars se chargent mal à  l'arrivée.
Ligne 66 : Ligne 86 :
* Problèmes de cache de viewer. Avec le cache il est difficile de dire quand quelque chose est cassé.
* Problèmes de cache de viewer. Avec le cache il est difficile de dire quand quelque chose est cassé.


=== Capacité des assets cassée  ===
=== [http://opensimulator.org/wiki/Capabilities Capacité] des assets cassée  ===
* 🏗️
* Ubit Umarov voit un message d'erreur dans le log de son viewer pendant la réunion :
2025-04-15T18:23:24Z INFO #Texture# newview/lltexturefetch.cpp(1424) LLTextureFetchWorker::doWork : ONCE (348900th time seen) : Texture non disponible via HTTP : URL vide.
* Il pense que la capacité des assets de la région de la réunion est cassée.
* Message d'erreur envoyé dans le log de Gavin Hird
Mesh# newview/llmeshrepository.cpp(1253) constructUrl : ONCE (1500ème fois vu) : La région actuelle n'a pas la capacité ViewerAsset !  Impossible de charger les maillages. Identifiant de la région : 8d26a41e-933f-4ff6-8b0f-435ac836bcad
* Vincent Sylvester dit que les viewers ne devraient pas essayer d'utiliser la capacité viewerasset.
* Cuga Rajal n'a pas de problème avec la version release du viewer, les meshes se chargent.
* Ubit Umarov pense que c'est un problème lié au temps. Ce serait une variante d'un problème des viewers sur les téléports, surtout pour l'hypergrid. Il semble que les viewers aient choisi de ne pas exploiter ou de compromettre les capacités.
* Cuga Rajal propose que c'est peut-être la version [[Lexique_des_réunions#Viewer_Firestorm_Bêta |bêta de Firestorm]] qui déclenche ces bugs, avec la version release, il n'y a pas de problème.
* Gavin Hird a les mêmes problèmes sur son [[Lexique_des_réunions#Viewer_Dayturn |viewer Dayturn]]
* Vincent Sylvester fera une nouvelle compilation d'OpenSim après la réunion, le souci viendrait peut-être de  [https://fr.wikipedia.org/wiki/Jenkins_(logiciel) Jenkins]]. Pour cette région Vincent Sylvester a utilisé le master dev d'OpenSim. Il a appliqué quelques patches, mais aucun ne touche aux assets. La grille fait tourner un serveur d'assets personnalisé qui n'est en fait qu'une simple recherche [[Lexique_des_réunions#MySQL | MySQL]] pour les données, rien de sophistiqué, très brut et simple. Les assets sont trouvés, mais il semble que les viewers cherchent à utiliser la capacité ViewerAsset destinée à ce que les viewers parlent directement au serveur d'assets plutôt qu'à la région.  Les formats sont légèrement différents, c'est pourquoi lorsque la région répond à cette capacité, la réponse est mal formée. C'est étrange que le timing l'amène à voir la capacité viewerasset comme solution de repli.
*Conclusion :  cette région est cassée d'une manière ou d'une autre.
 
== Wiki OpenSimulator ==
== Wiki OpenSimulator ==
=== Documenter la création de la bibliothèque ===
=== Documenter la création de la bibliothèque ===
* 🏗️
{{NDLR|fond=skyblue |bord=dodgerblue|message = <br>
OpenSimulator dépend de diverses bibliothèques nécessaires au fonctionnement. Celles-ci incluent  [[Lexique_des_réunions#Libopenmmetaverse|'''libomv''']], [[Lexique_des_réunions#OpenSim-libs|'''OpenSim-libs''']] et des [[Lexique_des_réunions#Bibliothèques_tierces|'''bibliothèques tierces''']].
}}
* Vincent Sylvester aimerait  documenter la création de la bibliothèque sur le wiki pour des raisons de transparence et pour faciliter la mise à jour à l'avenir.
* Cela concerne les [[Lexique_des_réunions#Libopenmmetaverse|libomv]] et [[Lexique_des_réunions#OpenSim-libs|OpenSim-libs]].
* Où les obtenir et comment les construire, etc
* Cuga a déjà fourni quelques notes sur le processus de création des dylibs. Pour  Mac, tout est documenté sur https://github.com/cuga-rajal/opensim_apple_arm64
* Il serait bon d'inclure la bibliothèque libgdiplus  dans les bibliothèques de OpenSim-libs. La couverture dans le projet mono et dans les miroirs de distro est un peu inégale.
* Pour SqLite, il faudrait également créer une version _x86 et.  _arm.dylib . Il y a encore des machines mac os qui tournent sur x86.
* Pareil pour la version .so (bibliothèque de systèmes Unix), puisque cette bibliothèque pose également des problèmes sur Raspberry Pi.
* Diviser les bibliothèques  signifie une taille de binaire plus importante, donc il faudrait l'éviter si possible.


= Viewers=
= Viewers=

Dernière version du 10 septembre 2025 à 06:56

Changements du code de la semaine

Vincent Sylvester a fait une comparaison entre les fonctions LSL présentes dans l'API OpenSim et ce qui est sur le wiki Second Life. Bien entendu, Ubit Umarov a accepté les changements, il a simplement fait un peu de nettoyage. Félicitations à Vincent Sylvester pour ta première série de soumissions de code à OpenSimulator.

Patchs pour fonctions LSL

llListFindListNext

Function: integer llListFindListNext( list src, list test, integer instance );
  • Renvoie l'index de la n-ième occurrence de test dans src.

llGetVisualParams

Function: list llGetVisualParams( key agentid, list params );
  • Renvoie une liste des détails pour agentid demandé dans params.

llGetHealth

Function: float llGetHealth( key id );
  • Renvoie l'état actuel d'un avatar ou d'un objet dans la région.
  • Ne supporte pas les objets et le résultat pour les avatars n'est pas comparable à celui de Second Life.
  • Vincent Sylvester a envisagé de travailler pour que la fonction supporte aussi les objets, mais cela nécessite beaucoup trop de mémoire.

llGetInventoryDesc

 Function: string llGetInventoryDesc( string item );
  • Renvoie une chaîne contenant la description de l'item de l'inventaire.

Ajout des fonctions

llGetSimStats

Function: float llGetSimStats( integer stat_type );
  • Renvoie un float correspondant à la statistique demandée (stat_type).

llHMAC

 Function: string llHMAC( string private_key, string msg, string algorithm );
  • Renvoie une chaîne qui correspond au hachage HMAC encodé en Base64 de msg lors de l'utilisation de l'algorithme de hachage algorithm et de la clé secrète private_key.
  • Vincent Sylvester essaye de faire un patch qui prend en compte sha224[1]. Il n'a pas encore réussi à le fusionner. Il a écrit ce patch à partir de zéro, C# n'a pas de bibliothèque prête pour cet algo.

Bug de téléportation

  • Commit f2379d : mantis 9133 remplacement de certaines vérifications z < 0 par < Constants.MinSimulationHeight (-100) (NDRL : Petite erreur de mantis, en réalité c'est 9193).
  • Mantis 9193 : La téléportation vers un emplacement avec -ve Z est considérée comme illégale et redirige vers <128,128,128>. Donc une téléportation vers un emplacement avec une valeur de Z négative est impossible.
  • Ubit Umarov a modifié le code pour permettre les téléportations à z < 0.

Avertissement

Attention : Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux réunions du mardi ou sur le canal IRC. Je ne fais pas partie des développeurs, ne vous adressez pas à moi pour les joindre. Merci.😉


Base de données

Problème de connexion avec SQLite sur Mac (suite)

  sqlite 3.7.5 - provoque un segfault lors du démarrage de macOS - même résultat en utilisant les versions 10.15, 10.14 et 15.4 de macOS.
  sqlite 3.17.0 - Le système d'exploitation fonctionne sans plantage mais génère des erreurs lors des opérations sqlite. Impossible de se connecter - même résultat en utilisant  les versions  10.15, 12, 15.4 de macOS.
  sqlite 3.39.4 - Même erreur que 3.17.0. Lance des erreurs pendant les opérations sqlite. Impossible de se connecter - même résultat si l'on utilise la cible de construction 10.15, 12, 15.4.
  sqlite 3.43.2 - qui vient avec macOS 15.4 - Opensimulator démarre sans erreur.
 
  • Vincent Sylvester pense qu'il est nécessaire d'utiliser une dylib totalement différente pour les composants liés à ARM. Il faudrait compiler des bibliothèques séparées pour x86 et ARM.
  • Comme c'est aussi instable pour Raspberry Pi qui utilise des processeurs basés sur l'architecture ARM, quelque chose dans le matériel ARM pose problème. D'ailleurs, quelqu'un a rapporté avoir fait une image docker sur Raspberry Pi et avoir échoué.
  • Gavin Hird explique qu'Apple a décidé de ne plus prendre en charge certaines fonctionnalités ou compatibilités pour Sonoma [2] et Sequoia [3] dans la version de Xcode (l'IDE d'Apple) [4] utilisée pour construire le composant. De plus, ce support a également été retiré pour les systèmes Intel. Bien que le support système ne soit pas présent à l'exécution, il est possible de compiler le composant, mais pas de l'exécuter.
  • Donc une version plus récente doit être construite pour qu'il fonctionne sur une version 14.5 (Sonoma) et une version 15.4 (Sequoia) ou plus.

Informations diverses

Message des commits

  • Ajout d'une fonction : Andrew Hellershanks pense qu'il faudrait indiquer dans le message des commits si une fonction a été ajoutée.
  • Modification : Quelques mots supplémentaires dans le message du commit seraient utiles pour savoir ce qui a été modifié.

Osgrid

Osgrid de retour

  • osgrid semble de retour. Ce sera peut-être un peu instable pendant un moment.
  • Cuga Rajal n'a pas pu faire d'IAR pour son inventaire avant réinitialisation d'OSGrid.
  • La grille n'est pas ouverte pour tout le monde, seulement pour certains comptes.

Les avatars

  • Actuellement, quand on se reconnecte à Osgrid, Ruth(avatar par defaut) apparaît.
  • Les entrées des données du dossier d'inventaire ont été nettoyées. Les parties du corps et les vêtements de base de l'avatar ont été oubliés.
  • Il faut copier le contenu des parties du corps et des vêtements dans le dossier principal à partir de la bibliothèque OpenSim, puis porter les 6 items.

Bug sur la région d'accueil de la réunion

Les avatars

  • Les avatars se chargent mal à l'arrivée.
  • Les participants à la réunion font des "rebake" : CTRL + R. On peut aussi essayer ALT + CTRL + R
  • Problèmes de cache de viewer. Avec le cache il est difficile de dire quand quelque chose est cassé.

Capacité des assets cassée

  • Ubit Umarov voit un message d'erreur dans le log de son viewer pendant la réunion :
2025-04-15T18:23:24Z INFO #Texture# newview/lltexturefetch.cpp(1424) LLTextureFetchWorker::doWork : ONCE (348900th time seen) : Texture non disponible via HTTP : URL vide.
  • Il pense que la capacité des assets de la région de la réunion est cassée.
  • Message d'erreur envoyé dans le log de Gavin Hird
Mesh# newview/llmeshrepository.cpp(1253) constructUrl : ONCE (1500ème fois vu) : La région actuelle n'a pas la capacité ViewerAsset !  Impossible de charger les maillages. Identifiant de la région : 8d26a41e-933f-4ff6-8b0f-435ac836bcad
  • Vincent Sylvester dit que les viewers ne devraient pas essayer d'utiliser la capacité viewerasset.
  • Cuga Rajal n'a pas de problème avec la version release du viewer, les meshes se chargent.
  • Ubit Umarov pense que c'est un problème lié au temps. Ce serait une variante d'un problème des viewers sur les téléports, surtout pour l'hypergrid. Il semble que les viewers aient choisi de ne pas exploiter ou de compromettre les capacités.
  • Cuga Rajal propose que c'est peut-être la version bêta de Firestorm qui déclenche ces bugs, avec la version release, il n'y a pas de problème.
  • Gavin Hird a les mêmes problèmes sur son viewer Dayturn
  • Vincent Sylvester fera une nouvelle compilation d'OpenSim après la réunion, le souci viendrait peut-être de Jenkins]. Pour cette région Vincent Sylvester a utilisé le master dev d'OpenSim. Il a appliqué quelques patches, mais aucun ne touche aux assets. La grille fait tourner un serveur d'assets personnalisé qui n'est en fait qu'une simple recherche MySQL pour les données, rien de sophistiqué, très brut et simple. Les assets sont trouvés, mais il semble que les viewers cherchent à utiliser la capacité ViewerAsset destinée à ce que les viewers parlent directement au serveur d'assets plutôt qu'à la région. Les formats sont légèrement différents, c'est pourquoi lorsque la région répond à cette capacité, la réponse est mal formée. C'est étrange que le timing l'amène à voir la capacité viewerasset comme solution de repli.
  • Conclusion : cette région est cassée d'une manière ou d'une autre.

Wiki OpenSimulator

Documenter la création de la bibliothèque

NDLR  :

OpenSimulator dépend de diverses bibliothèques nécessaires au fonctionnement. Celles-ci incluent libomv, OpenSim-libs et des bibliothèques tierces.


  • Vincent Sylvester aimerait documenter la création de la bibliothèque sur le wiki pour des raisons de transparence et pour faciliter la mise à jour à l'avenir.
  • Cela concerne les libomv et OpenSim-libs.
  • Où les obtenir et comment les construire, etc
  • Cuga a déjà fourni quelques notes sur le processus de création des dylibs. Pour Mac, tout est documenté sur https://github.com/cuga-rajal/opensim_apple_arm64
  • Il serait bon d'inclure la bibliothèque libgdiplus dans les bibliothèques de OpenSim-libs. La couverture dans le projet mono et dans les miroirs de distro est un peu inégale.
  • Pour SqLite, il faudrait également créer une version _x86 et. _arm.dylib . Il y a encore des machines mac os qui tournent sur x86.
  • Pareil pour la version .so (bibliothèque de systèmes Unix), puisque cette bibliothèque pose également des problèmes sur Raspberry Pi.
  • Diviser les bibliothèques signifie une taille de binaire plus importante, donc il faudrait l'éviter si possible.

Viewers

Firestorm Bêta

  • Le binaire de la version bêta a changé le 13 avril.
  • Version 77610 au moment de la réunion.

Source

http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2025-04-15