d'introduire des erreurs un peu partout.
Changement de la manière dont sont gérés les multiples virtualServers. La
manière précédente posait des problèmes avec certains serveurs qui pensaient
que le virtualServer localhost existait et d'autres pas. Ce nettoyage a
nécessité des changements un peu partout.
Tous les tests de non-régression n'ont pas encore été modifiés pour
fonctionner avec ce nouveau mécanisme.
Pour tous les serveurs, quand il n'y a pas encore d'administrateur système
déclaré, tout utilisateur, même non identifié est considéré comme
administrateur système.
Corrections d'erreurs lors des dernières modifications du dataflow.
Correction des fonctions getXxxForServerRole, pour qu'il soit maintenant
possible de faire :
virtualHostsProxy = getProxyForServerRole('virtualhosts')
...
import glasnost.proxy.VirtualHostsProxy
dans cet ordre.
(durée : 2,5 jours intensifs)
Correction de l'instruction ObjectSlotValue du dataflow pour qu'elle passe les tests de non régression.
Et surtout : Refonte complète du mécanisme de newThing (et importThing), afin que, par exemple, quand un serveur récupère un objet distant d'un autre serveur, l'objet soit un objet proxy, mais que les slots et kinds qu'il contient soient eux des éléments server (s'ils ne sont pas spécifiques). Cela permet à ce serveur de manipuler les slots d'un objet proxy et les récupérer dans ses propres objets sans avoir à les convertir.
Le mécanisme ci-dessus peut paraître bizarre, mais je parie un stagiaire que c'est la bonne manière de faire.
Mise de la variable globale applicationTokens dans le contexte global des serveurs.
Suppression de la variable mainModule (les variables globales sont maintenant toutes dans le contexte).
Suppression de l'attribut serverId de la classe Proxy.
Suppression de la fonction getDefaultDispatcherId.
Petite modification cosmétique (mineure : transformation des fonctions FaultXxx en classes faults.Xxx). Comme cette modification porte uniquement sur quelques caractères je ne l'ai pas testée.
Changement du nom de ces fonctions.
Changement de la manière dont les contextes sont empilés (liste chaînée au lieu de tableau auparavant). Cette modification permet à plusieurs threads de partager partiellement la même pile de contextes (nécessaire pour le dataflow).
Note : j'ai peut-être caché d'autres modifs dans ce commit géant. Peut-être, peut-être pas ? À vous de trouver :-)