Notes de versions
<< Notes à propos de la conception | Documentation Index | ChangeLog? >>
Attention !
Depuis la version 2.0 beta 20 (janvier 2005), il y a une modification dans la manière dont sont convertis les liens comportant une apostrophe ou un tiret. Derrière une apostrophe ou un tiret, il n'y a plus de majuscule mais une minuscule.
Par exemple le lien [[Suivi d'auteur]]
va vers la page SuiviDauteur
alors qu'auparavant il allait vers SuiviDAuteur
.
Ceci peut vous donner l'impression que certaines pages ont disparu, il n'en est rien, mais il faut les recopier ou les renommer. Vous pouvez directement renommer les fichiers par FTP sans problème (sauf la recherche des liens interpages qui est erronée tant que les pages n'ont pas été éditées).
Si vous utilisez les deux types de liens ChatHuant
et [[Chat-huant]]
, vous aurez des corrections à faire dans vos pages. De plus, lors de la mise à jour de la version i18n, il est préférable d'effacer toutes les pages internationales situées dans /wikilib.d
avant la mise à jour, afin d'éliminer les pages de la documentation devenues ainsi obsolètes.
Il y a aussi des modifications importantes depuis la V2.0 beta 44. Si vous migrez depuis une version antérieure, lisez attentivement les notes de cette version et des suivantes.
Version 2.2.0
- De nombreuses pages qui étaient dans le groupe Site.* sont désormais dans un groupe séparé SiteAdmin.*, Qui est limité en lecture par défaut. Les pages déplacées sont Site.AuthUser, Site.AuthList, Site.NotifyList, Site.Blocklist, and Site.ApprovedUrls . Lors de la mise à jour depuis une version antérieurede pmwiki, un message proposera de copier automatiquement ces pages au nouvel emplacement si nécessaire. Si un site souhaite continuer à utiliser l'ancien groupe Site.* pour ces pages, définissez simplement
$SiteAdminGroup
.'.Blocklist-PmWiki'] = array('format' => 'pmwiki');
Voici la liste des principaux changements:
- Des changements importants dans les mots de passe de PmWiki 2.2 indiquant que le groupe peut être édité même si le mot de passe du site est défini avec
"@nopass"
alors qu'auparavant ceci était fait avec"nopass"
passwdread=nopass:
par passwdread=@nopass
(voir 00961?) isidor?
- PmWiki est désormais livré par défaut avec les Mot Wiki totalement désactivés. Pour les réactiver définir soit
$LinkWikiWords
soit$EnableWikiWords
à 1. Pour avoir le comportement de la version 2.1 ou les Mot Wiki sont reconnus et espacés mais ne créent pas de lien, utiliser ce qui suit:
$EnableWikiWords
= 1;
$LinkWikiWords
= 0;
- Il est désormais aisé de désactiver la règle qui fait que les lignes avec un espace de début sont traitées comme du texte préformatté -- Mettez simplement
$EnableWSPre
=0; pour désactiver cette règle.Important: Il y a une discussion en cours pour que la règle de l'espace de début soit désactivée 'par défaut' dans les versions futures de 2.2.0-beta. Si vous voulez vous assurrer que la règle continuera à s'appliquer, mettez$EnableWSPre
=1; dans local/config.php. - La variable
$ROSPatterns
a été quelque peu modifiée -- Les chaînes de remplacement ne sont plus passées via FmtPageName() avant la substitution (c'est à dire que ceci doit être fait de manière explicite). - Les variables de page et les liens compris dans les pages d'un
(:include:)
sont maintenant traitées comme relatives à la page inclue, plutôt qu'à la page en cours. En bref, l'idée est que les liens et variables de page doivent être évaluées relativement à la page ou ils ont été écrits, plutôt qu'à la page ou ils apparaissent. Ceci parait plus conforme à ce que les auteurs attendent. Ils y a d'importantes conséquences à ce changement:
- Nous avons désormais une nouvelle forme de variable de page
{*$var}
, qui réfère toujours à "la page actuellement affichée". Les pages telles que Site.PageActions et Site.EditForm qui sont conçues pour fonctionner sur la "page en cours de navigation" devraient normalment utiliser{*$FullName}
au lieu de{$FullName}
. - Les paramètres $EnableRelativePageLinks et
$EnableRelativePageVars
contrôlent le traitement des liens et des variables de page dans les pages inclues. Cependant, afin de minimiser les troubles sur les sites existants,$EnableRelativePageVars
est mis par défaut à disabled. Ceci va donner aux sites existants le temps de convertir les références absolues{$var}
en références{*$var}
. - Éventuellement la variable
$EnableRelativePageVars
sera activée par défaut plus tard, aussi nous recommendons vivement de mettre$EnableRelativePageVars = 1;
dans local/config.php pour voir comment le site va réagir à cette nouvelle interprétation. Les administrateurs devraient spécialement vérifier les versions personnalisées de:Les pages SideBar avec ?action= links sur la page couranteLes listes de page qui font références à la page ou au groupe en cours dans les menus, en-têtes et pieds de page - La directive
(:include:)
a maintenant une optionbasepage=
qui permet aux auteurs de spécifier explicitement la page à partir de laquelle les liens relatifs et les variables de page doivent se baser. Si aucune option basepage= n'est spécifiée, la page inclue est supposée être la base.
- Nous avons désormais une nouvelle forme de variable de page
- Les sites qui voudraient maintenir le comportement de
(:include:)
et des autres éléments antérieur à la version 2.2 peuvent définir$Transition['version'] = 2001900;
pour maintenir les comportements par défaut de la version 2.1.x. - Une nouvelle option
$EnableLinkPageRelative
permet à PmWiki de générer des liens relatifs pour les pages aux lieu de liens url absolus. - Les capacités pour les brouillons ont été beaucoup améliorées. Quand
$EnableDrafts
est actif, alors le bouton "Enregistrer" est renommé "Publié" et un bouton "Sauver un brouillon" apparait. De plus, une variable de configuration$EnablePublishAttr
ajoute un nouveau niveau d'autorisation "publier" pour distinguer l'édition de la publication. Voir PmWiki:Drafts (en anglais) pour plus de détails. - Le texte inséré via
(:include:)
peut contenir des "substitutions immédiates" de la forme{$$option}
-- elles sont substituées avec la valeur de toute option fourni avec la directive include. - PmWiki reconnaît désormais quand il est demandé via "https:" et sélectionne les liens internes appropriés. Ceci peut être empêché en définissant explicitement
$ScriptUrl
et$PubDirUrl
.
- Il y a une nouvelle "variable de texte de page"
{$:var}
disponible qui peut capturer des extraits de texte en dehors du contenu des balises. Par exemple,{UnePage$:Xyz}
sera remplacé par une définition de "Xyz" dans UnePage. Les variables de teste de page peuvent être définies en utisant la balise de définition, une ligne commençant avec le nom de la variable et un ":", ou une forme de directive spéciale (qui n'affiche rien sur la sortie)::Xyz: une valeur # forme de définition de liste Xyz: une valeur # forme ":" (:Xyz: une valeur:) # forme de type directive
- La commande
(:pagelist:)
peut désormais filtrer les pages sur la base du contenu des variables de page et/ou des vaiables de texte de page. Par exemple, la directive suivante affiche seulement les pages qui comportent une variable de texte de page "Xyz" qui est "une valeur":Les jokers fonctionnent ici, donc la commande de pagelist qui suit liste les pages ou le titre de page commence par la lettre "a":(:pagelist $:Xyz="une valeur":)
(:pagelist $Title=A* :)
- The if= option to
(:pagelist)
can be used to filter pages based on conditional markup:(:pagelist if="auth upload {=$FullName}":)
pages with upload permission(:pagelist if="date today.. {=$Name}":)
pages with names that are dates later than today - Les espaces ne séparent désormais plus les 'jokers patterns' -- utiliser des virgules. (La plupart le faisaient déjà.)
- Parce que les variables de page sont désormais "relatives", les variables
{$PageCount}, {$GroupCount}, {$GroupPageCount}
utilisées dans les modèles de pagelist sont désormais{$$PageCount}, {$$GroupCount}, {$$GroupPageCount}
. - On peut désormais utiliser
{$$option}
dans un modèle de pagelist pour obtenir la valeur de toute 'option=' fournie par la commande(:pagelist:)
. - la directive
(:pagelist:)
n'accepte désormais plus par défaut les paramètres d'une Url ou d'un formulaire. De manière à accepter ces paramètres (ce qui était validé par défaut dans la version 2.1 et antérieures), ajouter une option request=1 à la directive(:pagelist:)
. - L'option
count=
de pagelists accepte désormais des valeurs négatives pouvant compter à partir de la fin de la liste. Doncscount=5
renvoie les premières cinq pages de la liste, etcount=-5
renvoies les cinq dernières pages de la liste. De plus, des plages de pages peuvent être spécifiées, comme danscount=10..19
oucount=-10..-5
. - Les modèles Pagelist peuvent avoir des sections spéciales
(:template first ...:)
et(:template last ...:)
pour spécifier les sorties pour la première ou la dernières page d'un groupe. Il y a aussi un(:template defaults ...:)
pour permettre de spécifier un modèle par défaut. - La balise conditionnelle
(:if ...:)
comprend désormais(:elseif ...:)
et(:else:)
. Les conditions ne peuvent cependant toujours pas être emboîtées. - La balise conditionnelle
(:if date ...)
peut désormais faire des comparaisons de date autre qu'avec la date et l'heure courante. - WikiTrails peut désormais spécifier des identifiants #ancres pour utilmiser seulement des sections de pages comme trail.
- Une nouvelle condition
(:if ontrail ...:)
permet de tester si une page est listée sur un trail. - Les extensions .odt, .ods, and .odp (pour OpenOffice.org) sont désormais reconnues comment attachements valides par défaut.
- Une nouvelle possibilité de blocklist a été ajoutée dans le noyau. Elle permet de bloquer les envois basés sur une adresse IP, une phrase, ou une expression régulière, et peut aussi utiliser des listes de blocage publiques. Voir PmWiki.Blocklist pour les détails.
- Il y a une nouvelle page SiteAdmin.AuthList qui peut afficher un résumé des tous les mots de passe et des permissions pour les pages d'un site. Cette page est réservée par défaut aux administrateurs.
- Il y a de nouvelles variables
{$PasswdRead}
,{$PasswdEdit}
, etc. qui affichent les paramètres de mot de passe pour une page (pour autant que le navigateur ait les autorisations 'attr' ou les autorisations définies dans $PasswdVarAuth). - La création de formulaires via la balise
(:input:)
a été reconstruite (et pourra subir de nouveaux changementsavant la diffusion 2.2.0). La nouvelle balise(:input select ...:)
peut être utilisée pour créer des boites de sélection, et(:input default ...:)
peut être utilisé pour définir des valeurs de contrôle par défaut, y compris pour les boutons radios et les cases à cocher. - La balise
(:input textarea:)
peut désormais accepter des valeurs depuis d'autres sources, incluant des variables de texte de page depuis d'autres pages. - Specifier
focus=1
sur un contrôle(:input:)
fait que le contrôle obtient le 'focus' d'entrée quand une page est chargée. Si une page a de multiple contrôles demandant le focus, alors le premier contrôle avec la plus basse valeur defocus=
"gagne". - PmWiki fournit désormais un module scripts/creole.php pour vamider le balisage standard 'Creole'. Pour activer cette option, ajouter
include_once('scripts/creole.php')
à un fichier de configuration locale. - Il est maintenant possible de configurer PmWiki pour créer automatiquement des pages de catégories lorsqu'une page est sauvée avec un lien vers une catégorie alors que cette catégorie n'existe pas encore. Les pages sont créées seulement si l'auteur possède les autorisations d'écriture appropriées pour le groupe. Pour activer ce comportement, ajouter ce qui suit dans local/config.php:
$AutoCreate['/^Category\\./'] = array('ctime' => $Now);
- Les sites avec les MotsWiki activés peuvent maintenant mettre
$WikiWordCount
['MotWiki'] à -1 pour indiquer que le 'MotWiki' donné ne doit pas être espacé comme prévu par la directive$SpaceWikiWords
. - Les Mot Wiki qui suivent # ou & ne sont plus traités comme des Mot Wiki.
- PmWiki fournit désormais les variables $CurrentTimeISO at $TimeISOFmt, pour spécifier les dates au format ISO.
- Les auteurs du Cookbook? peuvent utiliser la fonction PmWiki interne UpdatePage (temporairement documentée sur DebuggingForCookbookAuthors?) pour changer le texte de la page en préservant l'historique des informations, la mise à jour des numéros de révision de page, la mise à jour des pages de ChangementRécents, l'envoi des notifications par courriel, etc.
- Les Modèles de thèmes doivent désormais comporter des directives <!--HTMLHeader--> et <!--HTMLFooter-->. La variable $EnableSkinDiag va faire que PmWiki retournera une erreur si ce n'est pas le cas pour un thème chargé. Les thèmes qui ne veulent pas de section HTMLHeader ou HTMLFooter peuvent utiliser <!--NoHTMLHeader--> et <!--NoHTMLFooter--> pour supprimer l'avertissement.
- Supprimé (obsolète) les styles "#wikileft h1" et "#wikileft h5" du thème par défaut de pmwiki.
- Ajouté un nouveau wikistyle "pre" pour les blocs de texte préformaté.
- De nombreux appels Abort() fournissent désormais un lien vers les pages de pmwiki.org qui expliquent le problème plus en détail et fournissent une assistance au déboguage.
- PmWiki ne signale plus "?cannot acquire lockfile" si le visiteur lit simplement les pages ou entreprend une action en lecture seule.
- La variable de configuration
$EnableReadOnly
peut être configurée de manière à informer PmWiki qu'il doit fonctionner en mode "lecture seule" (c'esy à dire pour une districution sur un media en lecture seule). Les tentatives d'action d'écriture sur disque sont soit ignorées, soit déclenchent une erreur via Abort(). - Inclure authuser.php n'apelle désormais plus ResolvePageName().
- L'authentification utilisant 'Active Directory' est désormais simplifiée. Dans Site.AuthUser ou dans la variable $AuthUser, définissez "ldap://name.of.ad.server/" sans aucune définition de chemin complémentaire (voir PmWiki.AuthUser pour plus de détails).
Version 2.1.27 (11 décembre 2006)
Cette version porte depuis la 2.2.0-beta une correction pour les $TableRowIndexMax
et supporte aussi la balise {*$Variable}
.
Version 2.1.26 (11 septembre 2006)
Cette version corrige une erreur dans feeds.php qui fait se mélanger les entrées 'feed'.
Version 2.1.25 (8 septembre 2006)
Cette version corrige une erreur dans authuser.php introduite par la révision 2.1.24.
Le code des modèles a aussi été complété pour permettre <!--XMLHeader-->
et <!--XMLFooter-->
en tant qu'aliase de<!--HTMLHeader-->
et <!--HTMLFooter-->
.
Version 2.1.24 (6 septembre 2006)
Cette révision comporte des améliorations et corrections de la fonctionnalité AuthUser.
Une erreur dans authuser.php qui posait des problèmes avec les valeurs qui n'étaient pas des tableaux dans $AuthUser a été corrigée.
Il est désormais possible de spécifier des appartenances à des groupes depuis local/config.php (notez que ces entrées doivent être faites avant l'inclusion du script authuser.php):
# mots de passe d'alice et bob $AuthUser['alice'] = crypt('alicepassword'); $AuthUser['bob'] = crypt('bobpassword'); # membre des groupes @writers et @admins $AuthUser['@writers'] = array('alice', 'bob'); $AuthUser['@admins'] = array('alice', 'dave'); # carol est membre de @editors et @writers $AuthUser['carol'] = array('@editors', '@writers');
AuthUser peut désormais être lu depuis les fichiers .htgroup de format Apache. La localisation du fichier .htgroup peut être soit dans local/config.php ou Site.AuthUser
# local/config.php: $AuthUser['htgroup'] = '/path/to/.htgroup'; # Site.AuthUser htgroup: /path/to/.htgroup
Versions 2.1.21, 2.1.22, 2.1.23 (5 et 6 septembre 2006)
Ces révisions corrigent une vulnérabilité potentielle pour les sites qui fonctionnent avec le paramètre 'register_globals' actif. Des détails de cette vulnérabilité seront précisé sur la liste de diffusion et le site.
Les sites qui fonctionnent avec 'register_globals' et 'allow_url_fopen' actifs doivent installer cette révision dès que possible. S'il n'est pas possible de faire une mise à jour, contactez Pm (en anglais) pour avoir une correction pour des versions plus anciennes.
Il y a désormais un outil pour analyser la sécurité des sites PmWiki ainsi que d'autres paramètres de configuration, voir PmWiki:SiteAnalyzer.
La version 2.1.23 corrige aussi une erreur qui empêchait PmWiki d'être capable de lire les pages cées par des versions antérieures à la version 0.5.6.
Version 2.1.20 (4septembre 2006)
Quelques corrections mineures:
- Corrigé une erreur avec les références WikiWord apparaissant dans la balise
(:attachlist:)
. - Rétablit la possibilité de supprimer/prendre la main sur les paramètres CSS par défaut de PmWiki.
Version 2.1.19 (30 Août 2006)
Cette version propose une certain nombre de corrections et d'améliorations mineures:
- Corrige une erreur dans le code pageindex qui l'empêchait de se régénerer aussi vite qu'il devrait.
- Corrigé la manipulation des image/object/embed dans les styles wikistyles pour mieux fonctionner avec la recette Cookbook:Flash.
- Corrige un bug avec les styles wiki et les tags d'entrée des formulaires.
La prochaine révision devrait comporter des modifications et améliorations importantes du code, aussi cette révision corrige simplement quelques erreurs avant l'introduction de modifications importantes.
Version 2.1.18 (28 Août 2006)
Cette version corrige une vulnérabilité potentielle sur des exécutions de script inter-sites qui permet aux auteurs d'injecter du code Javascript au travers des balises de tableaux.
Cette version ajoute aussi une nouvelle balise (:input image:)
pour générer des tagds d'entrée d'image dans les formulaires.
Enfin, cette révision corrige un problème avec ?action=print
qui ne définissait pas correctement la variable de page {$Action}
.
Version 2.1.17 (26 Août 2006)
Cette version corrige un bogue ancien avec $EnableIMSCaching
(PITS:00573), ou les opérations de login/logout ne suppriments pas le cache du navigateur, ce qui fait que certaines personnes voient une version de la page antérieure au login.
Le nouveau code du cache IMS maintient un cookie "imstime" dans le navigateur du visiteur qui mémorise l'heure du dernier login, logout, nom d'l'auteur du changement, ou de la modification du site. Ce cookie est ensuite utilisé pour déterminer la réponse appropriée à la demande du navigateur contenant des en-têtes de type 'si modifié depuis'. (Auparavant seule l'heure de le dernière modification du site était disponible.)
Les navigateurs n'acceptant pas les cookies se comportent en pratique comme si le cache IMS est désactivé.
Version 2.1.16 (16 Août 2006)
Cette révision améliore la manipulation des thèmes -- essentiellement la possibilité de déplacer les fichiers de thème à d'autres endroits, et de fournir la possibilité aux modules d'ajouter des items à la fin de la sortie HTML.
Cette version introduit la directive <!--HTMLFooter-->
dans
Modèles de thèmes, ce qui permet aux modules et aux personnalisations d'ajouter des éléments vers la fin du document
en utilisant le tableau PHP $HTMLFooterFmt
.
Aussi, la directive <!--HeaderText-->
, qui ajoute le contenu de $HTMLHeaderFmt
dans la sortie, a désormais été renommé <!--HTMLHeader-->
. PmWiki continuera de reconnaitre <!--HeaderText-->
pour préserver la compatibilité avec les thèmes
existants, mais <!--HTMLHeader-->
est à préférer.
Un nouveau tableau $SkinLibDirs
a été créé pour permettre la localisation des sources et des urls pour les thèmes depuis un fichier de personnalisation. Par défaut $SkinLibDirs
est mis à
$SkinLibDirs
= array("./pub/skins/\$Skin
" => "$PubDirUrl
/skins/\$Skin
", "$FarmD
/pub/skins/\$Skin
" => "$FarmPubDirUrl
/skins/\$Skin
");
Les clés (à gauche) indiquent les emplacements à rechercher pour "le fichier de thème .tmpl" dans le système de fichiers, alors que les valeurs (à droite) indiquent la situation de l'url de "fichier css de thème". Modifier la valeur de $SkinLibDirs
permet à une fichier de thème .tmpl file d'être situé n'importe ou dans le système.
Pour autant que je puisse en juger, aucun des changements introduits par cette révision ne devrait avoir d'impact négatif sur les sites existants, aussi on peut faire une mise à jour sns risques. (Si je me trompe, merci de me le faire savoir.)
Version 2.1.15 (25 Août 2006)
This release includes a number of feature enhancements and code cleanups as reported or requested by administrators.
First, AuthUser's LDAP authentication system now allows the use of
a ?filter
parameter, consistent with urls used for mod_auth_ldap
authorization in Apache. See the newly updated LDAP section of the
AuthUser documentation for more details.
A chicken-and-egg problem with the @_site_*
authorization groups
has been resolved. It's now possible to have a page's read authorization
refer to things such as _site_edit
.
Also, the RetrieveAuthPage() function -- used for retrieving pages only if the visitor is authorized to do so -- now recognizes a special level parameter of 'ALWAYS', which means to always authorize access regardless of the browser or visitors current permissions. This may be useful for allowing certain operations to take place from within trusted scripts without having to grant full authorization to the browser.
Hardcoded instances of the local/ directory now use a
customizable $LocalDir
variable. This variable controls where
PmWiki looks for local/config.php and per-group customization
files. It may be useful for some Wiki Farm contexts. Note that
this does not change or affect the location of
$FarmD
/local/farmconfig.php.
Some minor internal changes have been made to scripts/wikistyles.php to better accommodate the wikipublisher recipe. It's probably better if we don't try to explain them. :-)
Version 2.1.13, 2.1.14 (15 et 16 Août 2006)
Cette version corrige une erreur pour la prise en compte des mots de passe numérique et permet l'authentification des sources ldaps:// .
Version 2.1.12 (7 Août 2006)
Cette version introduit la possibilité d'emboîter les balises div et les tableaux.
Les balises standard (:table:)
et (:div:)
sont toujours disponibles, sauf que une balise (:div:)
peut contenir une balise (:table:)
et vice-versa.
Comme dans les versions antérieures de PmWiki, la balise (:div:)
ferme automatiquement toute balise (:div:)
antérieure. Cependant, il y a désormais des balises (:div1:)
, (:div2:)
, etc. (et les balises (:div1end:)
, (:div2end:)
correspondantes, ...) qui peuvent être utilisées pour distinguer les divs pour les emboîtements.
Pour remettre en place le comportement des versions non emboîtables, définir $Transition['nodivnest'] = 1; dans un fichier de configuration locale.
Autres modifications de cette version:
- Ajout d'une directive
(:noaction:)
pour supprimer l'affichage des actions de page. - Permet aux ancres de contenir des ':' des tirets et des points.
- Ajoute "white-space" comme style Wiki.
- Quelques autres corrections mineures et corrections typographiques.
Version 2.1.11 (9 juin 2006)
C'est une mise à jour mineure qui empêche le style %define=%
de produire des paragraphes vides dans le code HTML. Avant cette version, les balises de lignes contenant seulement des définitions de style produisaient souvent des paragraphes vides (<p></p>)
, cette version modifie ce comportement, une balise de ligne commençant par %define=%
et contenant uniquement des définitions de style ne crée pas de nouveau paragraphe.
Version 2.1.10 (3 juin 2006)
La version 2.1.4 a introduit une variable de page {$Action}
qui contient la valeur de action=
. Malheureusement, cette variable de page était en conflit avec une variable globale précédente $Action
qui était utilisée par les thèmes pour afficher un formulaire pour l'action en cours. Puisqu'il n'y a pas vraiment de façon simple de résoudre ce conflit, j'ai décidé de garder [browse] comme une variable de page avec la valeur d'action courante (comme présenté dans la version 2.1.4) et de modifier la variable globale pour les thèmes en $ActionTitle
. Cela exige une mise à jour des thèmes afin qu'ils utilisent $ActionTitle
au lieu de $Action
. Toutes mes excuses pour ce conflit.
Cette version ajoute une page Site.LocalTemplates avec l'option fmt=#xyz
dans des résultats de recherche et dans pagelist. La liste de pages à rechercher peut être personnalisée à l'aide de la variable $FPLTemplatePageFmt
.
La thème 'pmwiki' ajoute maintenant une balise <span>
devant le lien "Recent Changes" dans l'en-tête afin de permettre l'ajout d'un style pour cette partie.
Version 2.1.9 (2 juin 2006)
Cette version corrige un bogue très ancien (et difficile à trouver !) lors du traitement des liens [[~Author]]
.
Version 2.1.8 (1er juin 2006)
Cette version change simplement la variable $NotifyListFmt en $NotifyListPageFmt
(mieux appropriée) et ajoute un tableau $NotifyList
qui peut être utilisé pour spécifier des entrées de notification dans le fichier de configuration.
Version 2.1.7 (31 mai 2006)
Cette version présente une variété d'améliorations et de correction de bogues.
Les paragraphes avec 'vspace' sont maintenant des div : la version 2.1.7 change la façon dont PmWiki génère le code relatif aux espaces verticaux (la fameuse séquence <p class='vspace'></p>
). Au lieu d'utiliser des paragraphes, PmWiki génère maintenant le code <div class='vspace'></div>
pour des séquences avec des espaces verticaux. De plus, PmWiki est capable de fusionner les <div>
avec vspace avec n'importe quelle balise de paragraphe suivant, comme par exemple :
<div class='vspace></div><p>...texte...</p>
est automatiquement convertit en
<p class='vspace'>...texte...</p>
Ceci permet un meilleur contrôle de l'espacement des paragraphes. A priori ce changement du traitement de vspace ne devrait pas avoir d'effets sur des sites existants. Les sites qui utilisent des valeurs personnalisées pour $HTMLVSpace
continueront à utiliser ces valeurs personnalisées. Un site qui veut rétablir le traitement précédent de PmWiki pour les espaces verticaux peut le faire en ajoutant la ligne suivant au fichier local/config.php:
$HTMLVSpace
= "<p class='vspace'></p>";
Amélioration des notifications par email lors des modifications d'une page : la version 2.1.7 ajoute un script "notify.php" qui fournit des capacités améliorées pour l'envoi des notification par email lors des modifications d'une page. Ce script est destiné à remplacer le script précédent MailPosts, qui est maintenant déprécié (mais continuera d'être inclus dans PmWiki 2.1.x). Les détails et les instructions d'utilisation du script notify.php se trouvent dans la page PmWiki.Notify.
Syntaxe supplémentaire pour les pages d'accueil des groupes : un nom de groupe suivi par seulement un point ou un slash sont automatiquement traités comme une référence à la page d'accueil du groupe. Cela simplifie les modèles pour les listes de pages ainsi que pour un certain nombre d'autres choses. Particulièrement les liens de groupe dans les pages avec l'instruction pagelist pointent maintenant correctement (au lieu de pointer vers une page du groupe actuel).
Plusieurs bogues et vulnérabilités ont été corrigés :
- La largeur par défaut du formulaire d'édition est maintenant plus appropriée pour Internet Explorer.
- Des messages d'échec d'identification de LDAP sont maintenant supprimés.
- Correction de quelques vulnérabilités XSS dans uploads.php et pour les liens url.
- Correction d'un problème lorsque la redirection vers des noms de page invalides aboutissait à une boucle (PITS:00723).
Version 2.1.6 (22 mai 2006)
L'amélioration principale de cette version est l'ajout d'un argument pagename à la balise de condition (:if auth :)
. Ainsi on peut visualiser les autorisations d'accès d'un visiteur à une page différente de la page courante. Par exemple, pour connaître les droits d'édition de la page 'Main.WikiSandbox, on utiliserait (:if auth edit Main.WikiSandbox:)
. Auparavant, la balise ne traitait que les autorisations de la page courante.
Cette version rétablit aussi la possibilité de traits d'union dans les liens Intermap.
Enfin, la version corrige une vulnérabilité dans la balise WikiTrail de cheminement wiki et propose quelques petites améliorations de performance.
Version 2.1.4, 2.1.5 (29 mars 2006)
Cette révision répare quelques erreurs:
- Les envois basé sur liste de pages utilisant ?action=rss marchent de nouveau.
- Les recherches multi termes comportant des caractères spéciaux sont réparées.
Cette révision ajoute aussi quelques éléments:
- Il y a désormais une variable de page d'
{$Action}
. - Les noms d'utilisateurs et les mots de passe soumis à authuser.php peuvent contenir des apostrophes.
- La commande
(:attachlist:)
utilise un algorithme de tri 'naturel'.
Version 2.1.3 (17 mars 2006)
Cette révision répare une erreur qui empêche l'option lines=
de fonctionner sur les sites tournant avec PHP version 5.1.1 ou ultérieure. Il répare à nouveau une erreur impliquant un mot de passe vide et l'authentification LDAP.
Version 2.1.2 (16 mars 2006)
Cette révision répare une erreur de gestion de mots de passe de type "nopass". Elle améliore aussi la performance des envois Internet importants, et corrige quelques erreurs mineures sur les confusions de balises HTML.
Version 2.1.1 (13 mars 2006)
Cette révision répare une erreur avec les mots de passe contenant des autorisations de groupe multiples, et dans le même temps assouplit légèrement le formattage et la manipulation de "@group" et "id:name". Cette révision ajoute aussi un nouveau mécanisme pour gérer et afficher les pages de FAQ.
Version 2.1.0 (12 mars 2006)
Cet ensemble des notes de versions est particulièrement long, car il liste l'ensemble des modifications intervenues depuis la version 2.0.13 (quatre mois de développement). Une grande partie [de PmWiki] reste inchangée, mais un certain nombre de modifications requiert des précautions particulières lorsque l'on met à jour depuis une version 2.0.x vers la version 2.1.0 (d'ou le changement de révision principale). Comme d'habitude, les questions et problèmes peuvent être signalées (en anglais) sur la liste de diffusion?.
- Les MotsWiki sont désormais désactivés par défaut. Pour les activer, définir "
$LinkWikiWords
= 1;" dans un fichier de configuration locale?. Avec la révision 2.1.beta2, vous pouvez laisser les MotsWiki actifs mais les liens vers des pages inexistantes n'auront plus de décoration -- pour faire ceci, placer les lignes suivantes dans pub/css/local.css:
span.wikiword a.createlink { display:none; } span.wikiword a.createlinktext { border-bottom:none; text-decoration:none; color:inherit; }
- Le code de
(:pagelist:)
a été significativement modifié. Le formatage de pagelist peut désormais être défini en utilisant la balise, et de nombreuses valeurs par défaut sont disponiibles dans Site.PageListTemplates. De plus, nombre de fonctions de formatage de pagelist (FPLSimple, FPLByGroup, FPLGroup) sont désormais supprimées au profit de code de 'template'. La fonction FPLByGroup peut être remise en place en ajoutant la ligne$Transition['fplbygroup']=1;
. Si quelqu'un a des problèmes de migrations vers le nouveau format, contacter la Liste de diffusion? (en anglais) pour avoir de l'aide. Il faut s'assurer que la page Site.PageListTemplates n'est pas protégée en lecture par un mot de passe, sinon la liste ainsi construite ne sera pas visible. - la directive
(:pagelist:)
comprend désormais les jokers dans les argumentsgroup=
etname=
, et permet aussi d'exclure des noms et groupes spécifiques - la directive
(:pagelist:)
comporte désormais l'option "order=random". (:searchbox:)
accepte désormais que les options "group=", "link=", "list=", etc. soient passées en même temps que les résultats. Il est aussi accepté une option "target=" qui identifie la page vers ou va la requête de recherche.?action=search
affichera le contenu de la page courante si elle contient une directive(:searchresults:)
, sinon le contenu de la page identifiée par$PageSearchForm
est utilisé (par défaut c'est la page de recherche pour la traduction courante).- PmWiki ne construit plus de fichier ".linkindex" -- il y a maintenant un fichier ".pageindex" qui contient non seulement une table de liens, mais aussi les mots utilisés dns chaque page (pour accélérer la rechherche des termes). La mise à jour du fichier .pageindex peut être désactivée en définissant
$PageIndexFile
=''; - La variable
$EnablePageListProtect
est désormais vraie par défaut, aussi les pages en lecture seules apparaissent seulement dans les listes de pages si le visiteur possède les droits de lecture. Notez que ceci peut ralentir la commande(:pagelist:)
et les commandes de recherche, aussi si vous n'avez pas de page en lecture seule ou si vous n'êtes pas gênés ar l'affichage des pages en lecture seule dans les listes, il vaudrait mieux définir$EnablePageListProtect
=0; . - Les règles d'espaces d'indentation existent est sont désormais actives par défaut. Toute ligne commencant par un espace et alignée avec un élément précédent d'une liste est désormais considéré comme "faisant partie" de cette liste. Le texte passe à la ligne de manière normale et la directive
(:linebreaks:)
est respectée. Pour désactiver l'indentation par espaces, utilisezDisableMarkup('^ws');
. - Une ligne blanche unique après une
!!Entête
est ignorée. - La directive
(:redirect:)
est désormais une vraie balise, et peut être incorporée dans des balises conditionnelles ou des inclusions. Elle permet aussi la redirection vers une ancre de page, comme dans(:redirect NomDepage#ancre:)
. Une nouvelle optionfrom=
permet à la redirection de n'être active que depuis les pages qui respectent la spécifications des jokers. L'optionstatus=
permet aux codes de statut HTTP 301, 302, 303, ou 307 d'être renvoyés. - La fonction d'autorisation incorporée a fait l'objet de modifications importantes, cependant ces changement devraient être compatibles avec les versions précédentes et ne devraient pas affecter les sites existants. (Si cela cause en pratique des problèmes, faites le moi savoir pour que j'enquête!) Le message de mot de passe est désormais spécifié dans une page modifiable par l'administrateur Site.AuthForm. De plus, la fonction d'autorisation ne crée plus de session PHP pour les visiteurs non authentifiés.
- Le module authuser.php a lui aussi été significativement modifié. La nouvelle version devrait être pleinement compatible avec les réglages précédents de authuser.php, mais cette version offre en sus la possibilité de configurer les ressources d'authentification et les groupes d'autorisation via la page Site.AuthUser. Notez que par défaut la page Site.AuthUser peut seulement être éditée avec le mot de passe d'administration.
- La variable
$Author
est maintenant mise par défaut à$AuthId
si elle n'est pas définie ailleurs par un script ou un cookie. - La page Site.SideBar a maintenant son mot de passe d'édition par défaut égal au mot de passe d'édition global du site (défini dans
$DefaultPasswords
['edit']). - PmWiki comporte désormais un "mode brouillon", validé par
$EnableDrafts
= 1. ceci crée un bouton "Save as draft" qui va sauver une page avec le suffixe "-Draft", pour une édition intermédiaire. - Il y a désormais une action ?action=login.
- Une vulnérabilité potentielle pour les sites fonctionnant avec PHP 5 et la variable register_globals activée a été corrigée.
- La balise
[[PageName |+]]
est désormais disponible par défaut; ceci crée un lien vers PageName et utilise le titre de cette page comme texte de lien . - Ce qui était précédemment les "variables de balise" est désormais les "variables de page?". Ceci est toujours spécifié en utilisant la syntaxee
{$variable}
, et peut être utilisé dans les balises et les chaînes $...Fmt. De plus, on peut demander une valeur pour une page particulière en placant le nom de la page devant la variable, par ex.{pagename$variable}
. - Le script scripts/rss.php est désormais scripts/feeds.php, et a été entièrement repris pour les générations web feed?. La nouvelle version supporte l'UTF-8 et les autres encodages, peut générer Atom 1.0 (
?action=atom
), des sorties 'Dublin Core Metadata' (?action=dc
), et des paquets pour le podcasting. Il permet aussi aux 'feeds' d'être générés à partiel des 'trails', groupes, catégories et liens arrière, et fournit des options (les mêmes que pour les pagelists) pour trier et filtrer les contenue du 'feed'. La plupart des sites peuvent simplement basculer versinclude_once("scripts/feeds.php");
à la place des include rss.php. Le fichier rss.php a été supprimé de la distribution (mais continue à fonctionner avec PmWiki 2.1 pour les sites qui souhaitent continuer à l'utiliser). - Les entrées InterMap peuvent désormais provenir d'une page Site.InterMap ou des fichiers local/localmap.txt et local/farmmap.txt. Le format de ces fichiers a été légèrement modifié, puisque un nom de lien InterMap doit désormais être suivi par le symbole ':').
- Il y a désormais un meilleur contrôle des interactions avec les robots de recherches (webcrawler) afin de réduire la cahrge du serveur et le bande passante. La variable
$RobotPattern
est utilisée pour détecter les robots sur la base de la chaîne utilsateur, et les actions non listées dans le tableau$RobotActions
vont retourner une erreur 403 'Forbidden response' aux robots. De plus, activer$EnableRobotCloakActions
va éliminer tous les liens interdits de type ?action= values sur les pages envoyées aux robots, ce qui va réduire encore la bande passante vers les robots (PITS:00563). - La gestion des pages inexistantes a été améliorée; quand un navigateur rencontre une age inexistante, PmWiki renvoie le contenu de Site.PageNotFound et un code de statut 404 ("Non trouvé").
- Les liens de page qui ont "?action=" dans leurs paramètres sont désormais traitées comme des liens vers une "page existante" même si la page n'existe pas.
- Le modèle PmWiki par défaut ajoute désormais rel='nofollow' aux liens sur les diverses actions.
- Quelques styles CSS dans le modèle par défaut de PmWiki ont été modifiés pour une meilleure présentation.
- Les boutons de la barre d'édition ont des bords transparents (au lieu de blancs) de façon à mieux s'intégrer dans les modèles.
- La variable
$EnableIMSCaching
est maintenant plus subtile et détecte les changements dans les fichier de configuration locale ainsi que dans les pages. - WikiStyles peut désormais faire des spécifications de pourcentage en utilisant "pct" à la place de "%".
- Les attributs de classe dans les raccourcis de StylesWikiStyle? sont désormais cumulatifs, de manière à ce que
%class1 class2%
donneclass='class1 class2'
au lieu de simplementclass='class2'
dans la sortie. - Un disfonctionnement avec la balise
(:include PageName#from#:)
a désormais été corrigé (PITS:00560). - Afficher une page GroupHeader ou GroupFooter n'affiche plus le contenu en double.
- Il est désormais plus facile de partager les pages entre plusieurs sites (par ex., WikiFarms), voir Cookbook:SharedPages (PITS:00459).
- Un problème avec les balises d'apostrophe emboîtées a été corrigé (PITS:00590).
- PmWiki est maintenant suffisamment malin pour éviter d'encadrer les balises de bloc HTML avec des balises <p>...</p>.
- Si une
[[#ancre]]
est utilisée plus d'une fois dans une page, seule la première génère effectivement une ancre (pour préserver la validité XHTML). - Il y a désormais une balise de condition?
(:if equal ...:)
et(:if exists pagename:)
. - Des balises d'expression conditionnelles composées sont désormais possible -- par ex.
(:if [ group PmWiki && ! name PmWiki ] :)
. - Ajouté un tableau $InputValues qui peut fournir des valeurs par défaut pour certains contrôle des formulaires (PITS:00566).
- La valeur par défaut de
$UploadUrlFmt
est désormais basée sur$PubDirUrl
au lieu de$ScriptUrl
. - La variable globale $text a été supprimée (utilisez $_GET['text'], $_POST['text'], ou $_REQUEST['text']).
- Un problème potentiel avec les encodage-url des attachements pour les caractères non-ASCII a été corrigé (PITS:00588).
- Les actions de page pour les pages inexistantes ne s'affichent plus avec des liens 'non-existants'.
- Un fichier README.txt a été ajouté et nombre de fichiers de documentation sont désormais accessibles dans le répertoire docs/.
- PmWiki n'est plus disponible via CVS on sourceforge.net. Il est désormais disponible via SVN sur pmwiki.org, à l'adresse svn://pmwiki.org/pmwiki/tags/latest. Pour plus de détails, voir PmWiki:Subversion.
- La variable $NewlineXXX (obsolète depuis la révision 2.0.0) a été supprimée.
- Il y a un support expérimental pour un cache des pages complexes coté serveur; ceci est une fonction prototype qui pourrait être supprimée ultérieurement.
Version 2.0.13 (10-Nov-2005)
Cette révision comporte des correction d'erreurs et des améliorations mineures en préparation pour les révisions 2.1.beta.
Les administrateurs Wiki doivent noter qu'après cette révision PmWiki aura les MotsWiki désactivés.
Pour être sûr que les MotsWiki sont activés, mettre $LinkWikiWords
= 1; dans le fichier local/config.php.
Version 2.0.12 (19-Oct-2005)
Cette révision corrige les problèmes de validation de page pour les pages contenant des fragments de recherche et des &, change PmWiki afin d'utiliser dans PHP la commande "return" au lieu de "exit", et corrige un avertissement dans scripts/transition.php.
Version 2.0.11 (17-Oct-2005)
Cette révision répare une paire de bogues importants et ajoute quelques nouvelles fonctionnalités à PmWiki.
De plus, cette révision répare le bogue avec ?action=attr qui modifie l'historique de page.
Pour les sites utilisant l'authentification LDAP avec authuser.php, PmWiki fournit désormais les variables $AuthLDAPBindDN
et $AuthLDAPBindPassword
pour spécifier les règles ('binding' ?) de recherche. Il contourne une bizarrerie du PHP qui fait apparaître comme authentifié un utilisateur quand un mot de passe vide est fourni. Authuser.php manipule désormais directment les codages de mot de passe md5 (utilisés couramment par les bases de données MySQL).
Le noyau inclut désormais la balise (:linebreaks:)
(d'après la recette Cookbook:LineBreaks), qui fait que le texte écrit sur des lignes séparées dans le code source apparaissent aussi comme des lignes séparées sur l'affichage (c.a.d., ne joint pas automatiquement une ligne à la précédente).
Il y a eu quelques modifications internes pour améliorer la gestion des séparateurs précédés par un espace (il y aura plus de détails à ce sujet dans une révision ultérieure).
Le noyau fournit désormais une balise (:if date:)
pour afficher le texte uniquement si le jour actuel est dans la gamme de dates définie.
Version 2.0.10 (29-Sep-2005)
Version 2.0.9 (28-Sep-2005)
Cette révision corrige une omission dans xlpage-utf-8.php qui échouait à mettre en majuscule les lettres ASCII quand mb_strtoupper n'est pas présent.
Version 2.0.8 (27-Sep-2005)
Cette révision ajoute simplement la possibilité d'utiliser des apostrophes pour entrer des phrases clés (mots de passe contenant des espaces) en utilisant ?action=attr, et corrige une erreur affichant le nom au lieu du titre dans le thème d'impression par défaut.
Version 2.0.7 (26-Sep-2005)
Cette révision modifie la conversion minuscule/majuscule dans xlpage-utf-8.php en utilisant une table plus directe, et complète la table avec plus de caracttères que dans le set utf-8.
Cette révision corrige aussi la variable $VersionNum
qui était supposée apparaître en 2.0.6.
Un raccourci clavier (ak_textedit) a été ajouté à la page d'édition de texte.
Enfin, cette révision ajoute un temps limite à la génération des .linkindex, pour éviter les temps sur les pages longues quand on génère le .linkindex.
Version 2.0.6 (16-Sep-2005)
Dans cette révision, il y a quelques compléments et de nombreuse corrections pour les sites qui utilisent ou ont besoin de l'encodage utf-8, la gestion des cookies d'auteur est améliorée, et il y a un meilleur support pour le suivi des révisions de version.
Le plus gros changement est dans le module xlpage-utf-8.php, qui a été réécrit de manière importante. Cette nouvelle version de xlpage-utf-8.php ne dépends plus de la fonction mb_strtoupper(), qui ne semble pas disponible dans de nombreuses installations PHP. Cette nouvelle version de xlpage-utf-8.php utilise mb_strtoupper() si disponible, mais sinon il effectue lui-même les conversions min/maj d'après une table unicode directement définie dans le module. Actuellement cette table comprends uniquement les conversions min/maj pour les caractères d'Europe de l'ouest (Latin-1 or ISO-8859-1) et les caractères cyrilliques, en souhaitant étendre la table pour supporter les autres langues autant que souhaitable. Contactez moi sur la liste de diffusion si une set de caractères particulier n'est pas encore supporté.
En sus de ce qui précède, les noms d'auteur et les cookies dans les environnement utf-8 fonctionnent de nouveau, et les suffixes de lien contenant des caractères non-ASCII fonctionnent également à nouveau.
La gestion des boutons de l'interface opérateur avec Internet Explorer a été beaucoup améliorée; la sélection de texte fonctionne désormais comme supposé quand on appuie sur un bouton de l'interface. Malheureusement, il est possible qu'il n'y ait pas d'espoir pour les navigateurs Mac Safari...
Une variable $CookiePrefix
a été ajoutée; un administrateur wiki peut définir $CookiePrefix
pour empêcher les cookies PmWiki's d'interférer avec les cookies définis par les autres applications du même nom de domaine.
Quelques problèmes de validation XHTML avec l'utilisation des balises <script> ont été résolues.
Et finalement, pour les auteurs de modules et de recettes, il y a désormais une variable $VersionNum
pour savoir si la version de PmWiki en cours est plus ancienne ou plus récente qu'une version identifiée. $VersionNum
est composé du numéro de version en ajoutant au numéros de versions mineures et majeures des zéros pour avoir trois chiffres, donc $VersionNum
pour cette révision (2.0.6) se lit 2000006, alors qu'une révision comme la "2.1.24" aura une variable $VersionNum
définie comme 2001024.
Comme précisé dans la liste de diffusion pmwiki-users, les entrées du PITS sont mises à jour lorque qu'il est envisagé qu'elles soient prise en compte dans la distribution principale. La liste peut être trouvée sur http://www.pmwiki.org/PITS/CoreCandidate, vous êtes tous invités à ajouter votes et commentaires sur les sujets en question.
Version 2.0.5 (9-Sep-2005)
Cette version ajoute une action ?action=logout
et nettoie quelques éléments pour le support des versions internationales.
La variable $Newline a été aussi formellement supprimées du code principal. -- les sites qui ont absolument besoin des pages stockées suivant le format 1.x peuvent définir $NewlineXXX. (Notez que cette version est toujours capable de lire les pages des formats PmWiki précédents.)
Version 2.0.4 (8-Sep-2005)
Une semaine après la révision 2.0.0 nous en sommes actuellement à la révision 2.0.4, la plupart des changements étant des améliorations et corrections mineures. On trouve quelques améliorations de-ci de-là.
Le plus gros changement est l'ajout d'un système d'indexation de liens pour améliorer la vitesse des Categories et des liens arrière (utilisant la balise
(:pagelist link=...:)
. Le système utilise un fichier .linkindex pour mémoriser tous les liens de pages du site, générant et mettant à jour le fichier dès que nécessaire et utilisant ce fichier pour éviter de scanner les pages connues pour n'avoir pas de lien vers la cible. Le fichier .linkindex peut être supprimé à tout moment pour le régénerer entièrement. L'indexation des liens peut être désactivée en définissant $EnableLinkIndex=0;
dans local/config.php.
Le "résumé des modifications" associé avec chaque édition est maintenant limité à 100 caractères maximum. Un paramétrage local peut modifier la taille maximum du résumé.
Les séquences 'tilde' (~) utilisées pour générer les signatures sont maitenant précises;
seule une séquence de 3 ou 4 tildes va créer une signature. Les séquences plus longues comme ~~~~~~~~ sont laissées tel que et ne sont pas converties en signatures. (Générer une séquence de trois ou quatre tildes nécessite toujours un peu de créativité, comme dans [=~~=]~
et
[=~~=]~~
.)
Un nombre important de messages précedemment codés directement sont désormais traduisibles lors de la création d'une version internationale.
De nombreux messages PHP E_NOTICE (affichés quand error_reporting() est définie à sa valeur maximum) sont désormais éliminés.
Version 2.0.3 (6-Sep-2005)
Ceci est une révision mineure; le noyau est amélioré pour afficher les résumé des modifications dans l'historique de page, et ajoute des attributs dans les furmulaires d'entrées de forms.php.
Cette révision corrige aussi une erreur dans la définition du paramètre $sub pour l'authentification LDAP, améliore les définitions de valeur par défaut dans scripts/urlapprove.php, et corrige les pages de recherche te le thème pour utiliser la variable $SiteGroup
au lieu de la valeur fixe "Site".
Finalement, cette révision change la balise (:searchbox:)
pour être un peu plus élegant lors de la génération de formulaire quand $EnablePathInfo
est défini.
Version 2.0.2 (3-Sep-2005)
Version 2.0.1 (2-Sep-2005)
Ces versions corrigent quelques erreurs mineures dans le chargement et l'enregistrement des pages, de l'envoi de courriel et la documentation.
Version 2.0.0 (1-Sep-2005)
Après une longue attente, Je suis heureux d'annoncer la version officielle de PmWiki 2.0.0, maintenant disponible sur http://www.pmwiki.org/pub/pmwiki .
PmWiki 2.0 est en développement depuis plus d'un an, avec plus de 80 versions de développement. De plus le 'cookbook' de la version 2.0 continue de s'étoffer, et comporte actuellement plus de 200 fiches et d'autres sont en préparation.
Non disponible à la mise sous presse: Que ceux qui seraient déçus que les fonctionnalités qu'ils jugent "indispensables" ne soient pas présentes dans la révision 2.0.0, se rassurent. La révision 2.0.0 n'est pas la fin du développement,mais seulement une base stabilisée pour la poursuite des améliorations. Même si quelques fonctionnalités (par ex., pages de discussion/commentaires, table des matières, autorisations sur des groupes, liens arrière et catégories plus rapides) ne sont pas dans la révision 2.0.0, je suis sûr que nous en sommes à un point ou ces possibilités pourront être ajoutées lors des révisions 2.0.x avec un impact minimal sur les sites 2.0 existants. Et si ce n'est pas le cas, nous repartirons en révision 2.1. :-)
Mise à jour vers 2.0.0: Beaucoup de sites sont restés relativement à jour avec les dernières version beta de la révision 2.0; pour la plupart de ces sites, la version 2.0.0 est une révision mineure (cependant, lire les notes plus bas). Pour les sites fonctionnant avec des versions beta antèrieures à la version 2.0.beta44, la révision peut nécessiter un peu plus de travail -- vérifier les Notes De Versions? pour plus de détails. Pour les sites fonctionnant avec les versions 0.6 et 1.0 de PmWiki, voir http://www.pmwiki.org/wiki/PmWiki/UpgradingFromPmWiki1 pour les recettes garantes d'un succès lors de la migration vers PmWiki 2.0.0.
PmWiki 2.0.0 comporte certains changements par rapport à la version précédente (beta55):
- Beaucoup de changements et d'améliorations à la documentation. Quelques pages de documentation nécessitent encore du travail, mais la documentation est désormais suffisamment avancée pour que je puisse valider la révision.
NDT : Maintenant, il faut traduire en Français ces améliorations...
- Cette révision est présentée avec un nouveau thème par défaut, qui est celui utilisé sur le site http://www.pmwiki.org. Pour les sites qui préfèrent s'en tenir à l'ancien thème, il est disponible sur http://www.pmwiki.org/wiki/Cookbook/PmWikiV1Skin .
- Le format d'enregistrement des pages dans in wiki.d/ a été quelque peu modifié. PmWiki 2.0.0 peut lire et interagir directement avec les pages stockées dans les précédents formats, mais tous les scripts externes qui tentent de lire directement les fichiers de wiki.d/ devront être modifiés pour prendre en compte le nouveau format. En particulier, la variable $Newline a été abandonnée et n'est plus utilisée. (Cependant, les sites qui ont besoin d'une compatibilité au niveau fichier avec les versions antérieures peuvent définir une valeur pour $Newline et PmWiki 2.0 l'utilisera.)
- Les pages effaçées ont désormais un suffixe de type ",del-1234567890" au lieu de l'heure.
- Le menu Site.SideBar est désormais non protégé par défaut. Les autres pages du groupe site continuent d'être protégées contre les éditions et requièrent le mot de passe administrateur pour être déverrouillées.
- De nombreuses petites améliorations et correction d'erreurs -- Voir le PmWiki/ChangeLog (en anglais) pour les détails.
Et pour la suite: J'ai prévu de travailler sur la mise à jour 2.0.0 des versions internationales -- beaucoup des éléments d'internationalisations ont cessé de fonctionner à partir de la version beta 44 et ont besoin d'un nettoyage. En parallèle avec ceci sont prévues des améliorations et nettoyages sur les pages de pmwiki.org, de même qu'une réponse aux entrées importantes du PITS. Après ceci viendra des améliorations fonctionnelles, incluant des pages de commentairess, l'édition de section, et des possibilités d'indexation/recherche améliorées.
Merci: Tous mes humbles et sincères remerciements à tous ceux qui ont contribué avec beaucoup de leur temps, de leurs idées, opinions, écriture et code pour PmWiki. Je sais que la page PmWiki:Contributors est largement obsolète, aussi si vous avez participé un tant soi peu au développement de base de PmWiki, ne soyez pas timide ou modeste -- n'hésitez pas à vous inscrire à la liste pour vous associer à ce remarquable groupe.
Et, comme toujours, les commentaires, suggestions, questions, et rapports d'erreurs peuvent être signalés sur la liste de diffusion ou sur le PmWiki Issue Tracking System.
Merci encore,
Pm
Version 2.0.beta55 (25-Aug-2005)
J'espérais sincèrement que la révision suivante serait la 2.0.0, mais ça n'a pas marché comme ça. Ce qui doit réellement être fait maintenant est de finir le nettoyage de la documentation.
Cette révision comporte nombre de changements importants et de correction. D'abord, 'value=' wikistyle fonctionne de nouveau, ayant été cassé dans une version précédente. Les StylesWiki acceptent désormais des points et des parenthèses dans les valeurs,
donc les éléments tels que "1.5em" et "rgb(255,255,255)" fonctionnent. Il y a un nouveau stype wiki "%cframe%
", qui centre le contenu dans un cadre de 200 pixels (ceci peut être ajusté avec le paramètre "width=" dans le style wiki).
La directive (:include:)
permet désormais la recherche d'une inclusion dans une liste de pages; la première page qui existe est sélectionnée. Ainsi la balise
(:include Page1 Page2 Page3:)
inclue le contenu de la première des pages disponible parmi Page1, Page2, ou Page3.
La balise [@...@] est désormais la balise de texte "preformatté". Elle peut être utilisée à la place de la balise 'espace' [=...=]
pour générer des blocs de texte preformatté et de texte brut. Elle est aussi plus performante dans la gestion des retour de ligne surnuméraires dans le bloc [@...@], de manière à ce qu'il n'y ait pas trop d'espace vertical indésiré dans l'affichage.
Et à propos d'espace vertical indésiré, la gestion par PmWiki des "ligne blanches" dans le texte source a été quelque peu modifiée. Dans les version précédentes de PmWiki, quelques directives
(par ex., (:comment:), (:keyword:), (:noleft:), (:if:)
) aboutissaient dans des lignes blanches dans le texte source, ce qui génerait un espace vertical dans l'affichage. Dans cette révision, seules les lignes qui sont blanches dans le texte source (avant interprétation) génèrent un espace vertical dasn l'affichage. ceci est plus évident pour les auteurs et permet des séquence de balises plus propres.
ceci peut avoir des effets sur certains auteurs de recettes. Si une balise spéciale crée une autre balise wiki à interpréter ultérieurement par PmWiki, et que la balise produite contient des lignes blanches destinées à l'espacement vertical dans l'affichage, alors la balise spéciale doit produire soit un tag '<:vspace>' ou appeller la fonction PVS() pour convertir les espace verticaux en tags (Pour plus de détails ou de l'aide, demander sir la liste de diffusion.)
Certains ont noté que le site pmwiki.org a désormais un nouveau thème; une variante de ce thème est supposée devenir le thème par défaut dans la prochaine révision. Le thème de la version 2.0.beta sera disponible en téléchargement dans le Cookbook pour les sites qui veulent continuer à l'utiliser.
Version 2.0.beta54 (1-Aug-2005)
Version 2.0.beta53 (30-Jul-2005)
Cette version réhabilite ?action=search, de manière à permettre les recherches dans le contexte d'une groupe ou de la page courante. Elle modifie aussi la directive (:searchbox:)
pour permettre une option "group=" pour limiter la recharche à certains groupes.
Version 2.0.beta52 (29-Jul-2005)
Cette version comporte nombre de corrections mineures et introduit des améliorations dans la gestion d'images. La majeure partie des améliorations est décrite dans la page PmWiki.Images. Les autres changements sont dans le ChangeLog.
Version 2.0.beta51 (22-Juil-2005)
Cette version corrge un problème introduit par la fonction "Enregistrer et éditer" introduite dans la version 2.0.beta44 -- Les envois fait avec "Enregistrer et éditer" ne tiennent pas compte de blocklists, urlapprovals, et de l'édition simultanée.
Pour les administrateurs et les auteurs de recettes qui utilisent les fonctionnalités d'édition, elles sont désormais contrôlées par la variable $EnablePost. Mettre $EnablePost à zéro supprime l'édition --
précédemment ceci était généralement fait avec unset($_POST['post'])
.
Si nécessaire, un message justifiant la suppression de l'édition peut être plaçé dans le tableau $MessagesFmt
.
Version 2.0.beta50 (20-Jul-2005)
Cette révision propose deux amélioration majeures dans la sémantique des autorisations de PmWiki:
1. Le tableau $HandleAuth
peut être utilisé pour définir le niveau d'autorisation requis pour exécuter l'action correspondante. Par exemple,
définir $HandleAuth
['diff'] à 'edit' signifie que le niveau d'autorisation d'édition est requis pour voir l'historique de page (?action=diff
). De manière similaire,
définir $HandleAuth
['source'] à 'admin' signifie que seul l'administrateur peut utiliser ?action=source
.
2. Les mot de passent sont désormais attribués en "cascade" -- c'est à dire que si une page définit un mot de passe de lecture, mais pas de mot de passe d'édition, à ce moment là, le mot de passe de lecture est requis pour pouvoir éditer. De manière similaire, si une page définit un mot de passe d'édition, mais pas de mot de passe pour la définition des mots de passe (...), alors le mots de passe d'édition est requis pour pouvoir modifier les mots de passe.
Eci évite les situations ou les auteurs définissent une mot de passe d'édition sur une page mais ne donnent pas de mot de passe correspondant pour modifier les mots de passe.
Ceci ne modifie pas les autres caractéristiques des mots de passe PmWiki -- c'est à dire, les mots de passe de page prennent le pas sur les mots de passe de groupe, et les mots de passe de groupe prennent le pas sur les mots de passe de site. La mise en cascade des mots de passe est seulement utilisée quand il n'y a pas de mot de passe de page, groupe ou site défini pour un niveau d'autorisation donné.
Version 2.0.beta49 (19-Jul-2005)
Cette révision ajoute un entête de Content-Disposition: pour les sites qui ont désactivé les téléchargements directs (remplissent automatiquement le nom de fichier du navigateur pour un tel téléchargement). Elle corrige aussi quelques problèmes avec la balise \\ à la fin des lignes.
Version 2.0.beta48 (13-Jul-2005)
Version 2.0.beta47 (12-Jul-2005)
Version 2.0.beta46 (11-Jul-2005)
Version 2.0.beta45 (10-Jul-2005)
Version 2.0.beta44 (10-Jul-2005)
Cette révision comporte nombre d'importants changements, et est, espérons-le, la dernière revision "majeure" avant la 2.0.0.
Avec cette révison on trouve un script spécial transition.php qui reconfigure PmWiki pour le faire fonctionner de manière identique aux révisions précédentes. Dans les notes ci-dessous, les changements gérés par le script de transition sont notés par [ ]. Ce script de transition script est automatiquement chargé par défaut de manière à ce que l'administrateur du site n'ai rien à faire pour l'utiliser.
Le script de transition script fournit aussi des options de diagnostic pour informer les administrateurs des endroits ou il peut y a voir des données ou fonctions obsolètes, et comment modifier le paramétrage pour la mise à jour.
PmWiki définit maintenant des styles CSS de façon à ce que les images d'une page soient affichées sans bordure (la valeur par défaut du HTML et une bordure de 1-pixel). Pour revenir au comportement antérieur, ajouter ce qui suit dans le fichier local/config.php:
$HTMLStylesFmt
['img'] = ' img { border:1px solid; } ';
$ImgTagFmt="<img src='\$LinkUrl' style='border:0px;' alt='\$LinkAlt' />";
Avec cette révision est proposé officiellement le groupe "Site" objet de discussions sur la liste de diffusion. Le groupe Site est destiné à gérer un ensemble varié de pages utilitaires et de configuration utilisée par PmWiki, et nombre de pages de PmWiki ont été déplaçées du groupe "Main" vers ce nouveau groupe. Plus de détails ci-dessous.
La modification principale de cette révision est sont support des formulaires d'entrée. Notamment, La page d'édition peut désormais être définie en utilisant des balise wiki dans la page Site.EditForm page. ( [ ] Cependant, PmWiki continue à respecter la variable $PageEditFmt
pour les sites ou les thèmes qui ont personnalisés les pages d'édition.)
La page d'édition comporte désormais une ligne de "résumé des modifications" ou les auteurs peuvent résumer la nature de leurs éditions. La page d'édition peut désormais comporter un bouton "Enregistrer et éditer" pour enregister les changements mais continuer à éditer, et un bouton "Annuler" pour abandonner les modifications.
La variable $EditMessageFmt pour affichier des messages aux auteurs est désormais le tableau $MessagesFmt
, qui peut être utilisé avec la balise (:messages:). [ ] Le script de script déplace les messages de $EditMessageFmt vers $MessagesFmt
pour maintenur un fonctionnement correct.
Nombre d'emplacements de pages traditionnels ont été déplaçés vers le groupe Site, dont beaucoup sont gérées par le script de transition:
- Le nouvel emplacement de la page AllRecentChanges (TousLesChangements) est Site.AllRecentChanges. [ ] Cependant, si Main.AllRecentChanges existe, elle sera uassi mise à jour. Les administrateurs pourront déplacer Main.AllRecentChanges vers Site.AllRecentChanges et /ou supprimer totalement Main.AllRecentChanges.
- Les résultats de recherche sont désormais Site.Search au lieu de Main.SearchWiki. Main.SearchWiki sera supprimée totalement dans une révision ultérieures. [ ] Le script de transition s'occupe de transformer certains liens de Main.SearchWiki vers Site.Search.
- Les urls approuvées sont désormais stockées dans Site.ApprovedUrls . [ ] Cependant, si Main.ApprovedUrls existe, il sera utilisé et mis à jour comme nécessaire.
- Main.SideBar est désormais Site.SideBar. Malheureusement, il est très difficile de gérer cette modification particulière dans toutes les combinaisons possible de thème, il est donc dévolu à l'administrateur la charge de déplacer les pages de menu dans le groupe adéquat, ou de modifier le thème en conséquence.
- PmWiki.EditQuickReference et PmWiki.UploadQuickReference sont désormais stockées dans le groupe Site.
- La page PmWiki.WikiHelp est considérée obsolète et sera supprimée dans une révision future.
La variable $PagePreviewFmt n'existe plus dans PmWiki standard (elle est désormais gérée par Site.EditForm). [ ] Cepedant, pour préserver la compatibilité avec les versions antérieures elle peut être créée par le script de transition dans certaines situations.
La substitution de $PageName (obsolète depuis la version 2.0.devel14) est désormais abandonnée. Utilisez $FullName à la place.
Les boutons de l'interface peuvent avoir des raccourcis clavier associés.
Les boutons de l'interface sont désormais affichés avec la directive (:e_guibuttons:)
dans Site.EditForm, au lieu d'être liés à $EditMessagesFmt.
Cette révision offre désormais la possibilité de personnalisations pour un utilisateur ou un navigateur spécifique, comprenant des raccourcis clavier et des tailles de formulaires. Plus de détails seront donnés ultérieurement dans la documentation.
Cette révision ajoute les directives standard (:noleft:)
et (:noright:)
pour supprimer l'affichage des menus droite et gauches (ce qui dépends des fichiers de configuration de thèmes).
Version 2.0.beta43 (8-Jul-2005)
This release adds the long awaited (:div:)
markup. The format of
the markup is
(:div:) ... (:divend:)
Attributes (e.g., id='name'
and class='class'
can be supplied
to the (:div:)
directive. (:div:)
lives in the same markup
layer as advanced tables (:table:)
, so divs and tables do not
nest, and any div or advanced table directive ends any previous
(:div:)
. (We may change this in a future release; for now we'll go
with the non-nesting version.)
The release also adds a div shortcut, any line beginning with >><<
marks a new div section. In addition, wikistyle specifications
can go between the >> and <<, thus >>bgcolor=#ffffdd<<
will create
a division with a light yellow background. Similarly, one can
do things like >>id=foo<<
, >>class=bar<<
, and even make
use of author-defined wikistyles such as >>center<< or >>Don<<.
Lastly, the wikistyle code now supports %id=name%
, which
allows an HTML id='name'
attribute to be added to the
affected text.
Version 2.0.beta42 (7-Jul-2005)
This minor release adds the (:if attachments:)
conditional markup, to include/exclude markup based on the (non)existence of attachments to the current page.
Version 2.0.beta41 (7-Jul-2005)
This is a minor release with some small bugfixes to uploads, adding the ability to set the item number for ordered lists with %item value=nn%
, and enabling nested Keep()s for module writers.
Version 2.0.beta40 (22-Jun-2005)
This very minor release simply updates the authuser.php script to support Apache MD5 encryption in .htpasswd files.
Version 2.0.beta39 (20-Jun-2005)
This release primarily fixes some bugs with wikistyles and their interactions with block structures such as tables and headings. In addition, the release fixes some nagging errors with opening directories in PITS and other recipes.
This release also adds definition lists to the available syntaxes for building WikiTrails.
Finally, this release adds scripts/authuser.php, which is a preliminary script for user-authentication based on .htpasswd (and similarly formatted) files.
Version 2.0.beta38 (14-Jun-2005)
This version performs a minor bug fix to the ListPages() function for those sites that are storing pages in per-group subdirectories.
Version 2.0.beta37 (26-Mai-2005)
Cette version corrige quelques erreurs mineures et apporte quelques amélioratons:
- Modifie l'emplacement ou $SearchIncl, $SearchExcl, et $SearchGroup sont définis
- Répare une erreur de définition de $SearchExcl
- Ajoute un contrôle de taille de fichier après qu'une nouvelle page soit écrite sur le disque, mais avant qu'elle ne remplace la page existante
- Ajoute $LinkUrl et $LinkAlt à urlapprove.php
Version 2.0.beta36 (30-Apr-2005)
Cette version corrige un bug important qui excluait des termes dans le code pagelist, et un petit bug avec la génération de cellules s'il y a des espaces après le '||' final dans un tableau simple.
Version 2.0.beta35 (24-Avril-2005)
Cette version corrige quelqhues bugs dans le code récent de pagelist.
Version 2.0.beta34 (23-Avril-2005)
Version 2.0.beta33 (22-Avril-2005)
Cette révision apporte une révision majeur du fonctionnement du script pagelist.php, qui supporte les balises
(:pagelist:)
et (:searchresults:)
. Cette version
supporte maintenant un paramètre link=
pour renvoyer des pages avec des liens vers une page cible (i.e., "backlinks"). Nous avons aussi les paramètres "order=" et "count=" qui peuvent être utilisés pour trier les pages listées et limiter la longueur d'affichage.
Cependant, ces changements font qu'il est possible que certaines personnalisations locales ou certains modules ne fonctionnent pas, aussi soyez prudents lors d'une mise à jour.
Cette révision optimise aussi l'affichage des liens et répare un problème de performance dans la fonction FmtPageName(). Ces changements améliorent a vitesse d'affichage des pages jusqu'a 40%.
Ce qui reste avant la révision officielle 2.0: reprise de la page d'édition, ajout d'une fonction de commentaire, et correction de la documentation.
Finalement, les séquences finales ?> ont été supprimées de tous les scripts pour simplifier l'installation sur VMS et d'autres environnements qui ont des problèmes avec les sauts de lignes après les ?> fermants.
Version 2.0.beta32 (17-Avril-2005)
La version beta32 ajoute la variable $RCLinesMax
, qui limite le nombre maximum de lignes qui sont sauvées dans les fichiers RecentChanges (TousLesChangements et ChangementsDuGroupe). La valeur par défaut est zéro, qui correspond à "aucune limite".
Version 2.0.beta31 (15-Avril-2005)
Cette révision ajoute la possibilité de stocker et afficher les attachements (uploads) depuis des répertoires qui ne sont pas directement accessibles au serveur Internet.
L'action "download" (?action=download
) dit à PmWiki de récupérer un attachement associé à la page courante. Ceci peut être utilisé pour protéger les attachements par un mot de passe de page, ou pour contourner les serveur Internet qui ne peuvent pas accéder aux fichiers dans le répertoire uploads/ créé par PmWiki.
directories.
Definir $EnableDirectDownload
=0; dit à PmWiki de générer des liens ?action=download
pour récupérer les attachements au lieu d'accéder directement par le serveur Internet. Notez que cette configuration ne peut en elle-même protéger le répertoire de téléchargement; on doit aussi configurer les serveur Internet ou le répertoire uploads/ pour bloquer les accès directs aux fichiers attachés.
Cette révision ajoute aussi la variable $EnableFixedUrlRedirect
. Quand PmWiki recoit une url avec une "nom de page partiel" (tel que le nom du groupe Wiki), il détermine d'abord le "nom complet" pour la page. Normalement PmWiki envoie ensuite un "redirect" au navigateur demandant à celui-ci de recharger la page suivant le nom complet "officiel" de la page, mais mettre
$EnableFixedUrlRedirect
à zéro supprime le rechargement et la page est donc envoyée immédiatement (et l'url d'accès à la page est donc conservée).
Version 2.0.beta30 (14-Avril-2005)
Cette révision contourne quelques problèmes avec les sessions PHP résultant en des verrrouillages de tâches web. Les changements introduits dans le code des autorisations de la révisions 2.0.beta29 ont sérieusement augmenté les risques de tels verrouillages, aussi tous les sites opérant la révision 2.0.beta29 sont incités à mettre à jour vers cette version.
Cette révision modifie aussi la gestion des MotsWiki de manière à ce que les motswiki ne soient plus espacés si la variable $LinkWikiWords
est désactivée.
Enfin, cette révision ajoute $PageTextStartFmt et
$PageTextEndFmt pour permettre des personnalisations locales du container autour de <!--PageText-->
dans les thèmes.
Version 2.0.beta29 (11-Avril-2005)
Cette révision comporte des modifications importantes dans les autorisations et le stockage des pages, aussi les sites opérationnels peuvent attendre la découverte et la correction des nouveaux bugs avant de faire une mise à jour. Ou alors, allez-y mais soyez prêt à une marche arrière vers la révision beta28 ou antérieure si vous avez des problèmes.
Cependant, j'ai besoin de nombreux testeurs pour les nouveautés de cette révision, qui sont substantielles. Et donc j'apprécierai grandement l'aide que peuvent apporter les gens qui testent et suggèrent des améliorations. Je recherche particulièrement des idées en ce qui concerne les interfaces et comment en faciliter la compréhension.
Le formulaire des attributs de page (obtenu par ?action=attr et utilisé pour définir le smots de passe) a été amélioré de telle sorte qu'il est maintenant possible de voir quels mots de passe ont été définis, et si ces mots de passes viennent des valeurs par défaut du groupe ou du site. Par exemple, voir http://www.pmwiki.org/wiki/Test/AttrExample?action=attr . Ces messages ne sont pas encore traduits -- Je veux que l'interface en anglais soit d'abord finalisée et ensuite nous définirons les chaînes de traduction.
Des mots de passe multiples (séparés par des espaces) peuvent désormais être définis pour les pages et les groupes, ainsi entrer "un deux" comme mot de passe signifie que 'un' ou 'deux' seront acceptés. De ce fait, les mots de passe ne peuvent pas contenir de blancs (J'espère que ceci ne sera pas une grande perte -- faites moi savoir si c'est le cas).
Le champ de demande de mot de passe est maintenant présenté avec un thème normal. (c'est à dire avec entête, menu, pied de page); précédemment les formulaires de mot de passe n'étaient pas décorés et apparaissaient seuls dans la fenêtre du navigateur
Il y a une balise conditionnelle (:if auth ...:) disponible pour faire des actions dépendantes des autorisations en cours. Par exemple, on peut créer une liste à puce avec
(:if auth read:)* [[Voir page -> {$Name}?action=browse]] (:if auth edit:)* [[Editer page -> {$Name}?action=edit]] (:if auth upload:)* [[Attachements -> {$Name}?action=upload]] (:if auth attr:)* [[Attributs de page -> {$Name}?action=attr]] (:if auth admin:)* Vous êtes logué comme administrateur (:ifend:)
et seuls les items correspondants aux autorisations en cours pour l'utilisateur vont apparaître. Ceci sera très utile pour créer des boutons correspondant aux actions.
Assuming there's already some mechanism in place for identifying and authenticating someone, pages can specify a password field of "id:xyz", which means to allow only user "xyz" the specified access. For example, specifying an edit password of "id:alice" means that only user "alice" (and the admin) is allowed to edit the page. Multiple ids can be specified as either "id:alice,bob,carol" or "id:alice id:bob id:carol". The special value "id:*" is used to mean any authenticated user, and users can be excluded via the minus sign, as in "id:-eve,*".
User-based authentication can completely coexist and mix freely with password-based authentication, thus an edit password of "id:alice glorp" will allow Alice and anyone who knows the password "glorp" to edit the page.
2.0.beta29 supports only REMOTE_USER authentication; future releases will add other authentication mechanism.
Version 2.0.beta28 (27-Mar-2005)
Cette révision comporte des améliorations importantes à la fonction attachements/téléchargements de PmWiki. Les améliorations comportent:
- La balise Attach: peut désormais être utilisée pour référencer des attachements sur d'autres pages; La syntaxe est
Attach:nompage/fichier.ext
. "nompage" peut renvoyer à des pages d'autres groupes. - Les extensions (éventuelles) des attachments sont automatiquement mis en minuscules.
- La balise
(:attachlist:)
accepte désormais des paramètres; ext= peut être utilisé pour limiter la liste des attachements à des extensions spécifiques, et on peut fournir un nom de page pour obtenir les attachements de cette page (par ex.,(:attachlist Groupe.NomPage:)
.
Version 2.0.beta27 (26-Mar-2005)
Cette révision comporte un certain nombre de changement mineurs et de corrections. Les changement les plus importants sont listés ci-dessous.
- Les fichiers localmap.txt et farmmap.txt peuvent désormais comporter des substitutions de $-variables (comme pour toutes les variables disponible par FmtPageName).
- La majorité des directives incorporées ne sont plus sensble à la casse (minuscule/majuscule).
- La directive (:markup:) possède désormais une version (:markup:) ... (:markupend:). La syntaxe antèrieure
[=...=]
...
- Correction d'une erreur avec le texte préformaté qui mangeait le premier espace.
- Ajouté la balise
{$FullName}
. - Corrigé une erreur dans la gestion de
$MetaRobots
.
Version 2.0.beta26 (5-Mar-2005)
Cette révision ajoute la possibilité d'avoir des modèles d'édition, c'est à dire que les administrateurs de site peuvent définir le texte par défaut des nouvelles pages. Plus de détails (en anglais) sur Cookbook:EditTemplates.
Version 2.0.beta25 (2-Mar-2005)
Version 2.0.beta24 (1-Mar-2005)
Cette révision comporte une correction importante dans l'exécution des paramètres QUERY_STRING, et change la manières dont les PagesNonTrouvées sont générées. Ceci est nécessaire pour éviter que les robots (notamment celui utilisé par inktomi) génèrent de longues séquences de liens vers des pages inexistantes.
Cette révision ajoute aussi la fonction ParseArgs()
pour faciliter la séparation des paramètres de directives pour les modules du cookbook et d'autres composants. La documentation pour cette fonction sera fournie dans Cookbook:ParseArgs.
Les balises de liste ont été modifiées de manière à supprimer tout espace unique qui suit la balise.
Un commutateur $EnablePostAttrClearSession
a été ajouté pour contrôler si la modification des attributs d'une page entraîne ou non l'oubli des mots de passe déjà saisis; ceci peut être modifié en mettant $EnablePostAttrClearSession
à zéro.
Version 2.0.beta23 (24-Fev-2005)
Cette révision apporte quelques améliorations.
Tout d'abord, le système de gestion des mots de passe a été amélioré pour limiter la confusion dans la gestion des mots de passe (d'autres améliorations sont prévues). Auparavant PmWiki gardait en mémoire tous les mots de passe saisis lors de la session de navigation courante. Dans cette révision, modifier un mot de passe fait que PmWiki "oublie" tous les mots de passes entrés préalablement, évitant ainsi la confusion due au fait qu'une page apparaît non protégée alors qu'en fait l'accès est autorisé par un mot de passe enregistré auparavant.
Cette révision ajoute l'option $EnablePageListProtect
. Quand activée, les directives (:pagelist:)
et (:searchresults:)
exclueront les pages n'ayant pas d'autorisation de lecture.
Version 2.0.beta22 (23-Fev-2005)
Cette révision apporte quelques améliorations et quelques corrections d'erreurs.
Le code de chargement des thèmes (skins) a subi quelques améliorations et a été réécrit pour une bonne part, mais ceci ne devrait pas avoir d'effet sur les thèmes existants. La variable $BasicLayoutVars n'est plus utilisée. Cette version introduit la fonction SetTmplDisplay() qui facilite une adaptation personnelle permettant de désactiver certaines sections d'un thème.
L'écran de demande de mot de passe a été modifié de manière à ce que le curseur soit automatiquement placé dans le champ lorsque la page est chargée.
L'action ?action=source a été corrigée pour les pages contenant des caractères non-ASCII.
La barre de boutons peut désormais utiliser des boutons contenant des élément HTML quelqconques (par ex., pour les boutons "sauver" et "prévisualisation").
Il y a d'autres modification notées dans le PmWiki/ChangeLog (en anglais).
Version 2.0.beta21 (13-Fév-2005)
- Modifié la largeur de la boîte d'édition dans le thème(skin) pmwiki pour qu'elle soit de 98% pour IE (suggested by Hans).
- Corrigé un bug dans scripts/pgcust.php qui testait un mauvais indicateur pour le chargement de local/default.php (PITS:00305, découvert par Joe Miller).
- Corrigé un bug où les cellules d'en-tête de tableau (<th>) ne généraient pas de (signalé par V. Krishn).
- Corrigé un bug sur les lignes d'attributs de tableau qui généraient des paragraphes vides <p></p> (signalé aussi par V. Krishn).
- Corrigé un bug sur l'initialisation de $AuthorPage et $AuthorLink (indiqué par M. Weiner et John Rankin PITS:00247).
- Corrigé un bug mineur dans la méthode PageStore->ls().
- Ajouté la conversion des balises V1
[[page:]]
et[[linebreaks]]
des recettes du cookbook (suggéré par C. Ridderström et P. Ogay). - Corrigé rss.php pour l'affichage de $Title au lieu de l'affichage du seul nom de la page (suggéré par G.J. De Bruin).
- Modifié le umask par défaut de PmWiki à 002.
Version 2.0.beta20 (30-Jan-2005)
Cette version a un nombre de changements relativement mineurs.
D'abord, la variable $UrlLinkFmt
a été modifiée de manière à ce que les liens aux urls externes contiennent l'attribut rel='nofollow', pour aider à lutter contre le spam comme décrit (en anglais) dans http://www.google.com/googleblog/2005/01/preventing-comment-spam.html. Les administrateurs de site peuvent adapter $UrlLinkFmt
et $UnapprovedLinkFmt de façon à définir ou omettre rel='nofollow' selon la nécessité.
l'algorithme de création des noms de pages avec les [[liens libres]]
a été légèrement modifié. d'abord les lettres suivant un tiret ne sont plus automatiquement capitalisées, donc [[ci-joint]]
renvoie vers une page nommée "Ci-joint" et non "Ci-Joint". ceci est plus conforme à ce qui se faisait dans la version 1. D'autre part, l'apostrophe ne force pas la capitalisation de la lettre qui suit, donc [[L'artiste]]
renvoie vers Lartiste
et pas vers LArtiste
.
Les sites qui souhaitent conserver le comportement antèrieur de PmWiki2 peuvent le faire avec :
$PageNameChars = '-[:alnum:]'; $MakePageNamePatterns = array( "/[^$PageNameChars]+/" => ' ', "/(\\b\\w)/e" => "strtoupper('$1')", "/ /" => '');
Le fichier de liens intersites localmap.txt peut maintenant comporter des commentaires (préfixés par '#' dans le fichier).
Les en-têtes (balises !!) peuvent maintenant comporter des styles wiki de bloc.
Plus d'informations (en anglais) dans PmWiki.ChangeLog.
Version 2.0.beta19 (17-Jan-2005)
PmWiki utilise les sessions PHP pour suivre les mots de passe et les autorisations de page; cependant, si une session expire (ou est perdue autrement) alors qu'un auteur est en cours d'édition d'une page protégée par mot de passe, l'édition peut être perdue lors de la demande de renouvellement de mot de passe. Cette version corrige ce problème en préservant le texte édité et les autres variables de formulaires lors de la demande d'un mot de passe.
Version 2.0.beta18 (17-Jan-2005)
Cette révision améliore la barre de bouton d'édition, corrige quelques bugs et apporte d'autres changements et améliorations mineures.
Un texte alternatif est désormais valide dans les cheminements WikiTrails; par ex., on peut utiliser <<|[[PageTrail | autre texte]]|>>
pour changer le texte du lien vers la page de cheminement.
Le module de la barre de bouton d'édition comporte de nombreux changements.
- De nouvelles images sont founies pour les listes, l'indentation, les en-têtes et les tables et le fichier sample-config.php comporte des exemples pour configurer ces boutons complémentaires dans la barre.
- Le bouton "Heading 3" (entête 3) a été modifié en séparant "Heading" et un bouton optionnel "Subheading".
- Le bouton "Attach:" (trombone) n'apparaît dans la barre que si les envois de fichiers sont activés pour cette page.
- Pour les navigateurs qui le permettent, cliquer sur l'un des boutons qui ajoute du texte laisse ce texte actif (pour faciliter le remplacement du texte).
Cette révision élimine aussi les balises <p>...</p> qui étaient générées autour des lignes contenant d'autres balises de blocs HTML (par ex. résulats de recherche, listing de page, formulaires). Ceci rend ces pages conformes au standard HTML et elles passent la validation du W3C.
$HTMLHeaderFmt
a été modifié afin que les concepteurs de thèmes puissent invalider totalement les styles 'inline' utilisés par PmWiki et d'autres modules du coolbook. Pour désactiver les styles 'inline', utilisez $HTMLHeaderFmt['styles'] = '';
.
Finalement, cette révision répare un appel à la fonction setlocale() qui était supposé retourner la valeur courante de 'locale' mais en fait la modifiait.
Version 2.0.beta17 (12-Jan-2005)
Cette révision corrige simplement quelques bugs mineurs des les StylesWiki (les couleurs définis dan s les styles s'étendent aux ancres), les tableaux de mots de passe par défaut et la gestion des tableaux évolués.
Version 2.0.beta16 (11-Jan-2005)
Corrige l'oubli de la fonction requise pour la gestion des boutons d'édition.
Version 2.0.beta15 (10-Jan-2005)
L'amélioration principale de cette révision est l'addiation de boutons dans la fenêtre d'édition. Ceci est désactivé par défaut -- Pour l'activer, définir dans le fichier config.php.
$EnableGUIButtons
= 1;
Si votre site personnalise la variable $PageEditFmt
, then notez que les boutons sont plaçés à la fin de $EditMessageFmt et que <textarea> doit avoir id='edit'
pour permettre auxboutons de fonctionner.
Le script rss.php a aussi été amélioré -- il transcrit désormais les entités (du HTML 4) en leurs équivalent numériques. Ceci élimine beaucoup d'erreurs de validation des flux et de problème avec les lecteurs de flux RSS.
Cette version ajoute la variable $Titlespaced variable et la balise {$Titlespaced}
; $Titlespaced est remplacé par le titre de la page (s'il est défini par la directive (:title:)
) ou par le nom de la page avec des espaces.
Enfin, nombre d'erreurs avec les styles wiki? ont été corrigées.
Version 2.0.beta14 (28-Dec-2004)
Cette révision apporte un certain nombre d'optimisations et améliorations mineures, résumées ci-dessous. Si vous n'en comprenez pas la nature, elles ne vous affecteront probablement pas. :-)
- Les balises <img ...> de PmWiki utilisent désormais
style='border:0px;'
au lieu deborder='0'
. - PrintFmt() appelle maintenant Lock(0) pour libérer les verrouillages avant d'envoyer la sortie au navigateur. Ceci est important parce que certains serveurs web (et notamment Apache) restent parfois bloqués lorsqu'ils ne peuvent pas envoyer de sortie vers le navigateur, et donc empêchent d'autres personnes d'éditer/poster des pages.
$PageEditFmt
inclut maintenant id='text' pour faciliter le référencement/la mise en page.- Le code de MarkupToHTML() "posteval" a été considérablement modifié.
- PageExists() met désormais en cache les résultats de vérification d'existence de page.
- Les urls de page sont désormais automatiquement encodées-url quand nécessaire.
- Nombre d'expressions régulières internes de PmWiki ont été optimisées pour (espérons-le) améliorer la vitesse de recherche.
- Les comparaisons vers substr() ont été remplaçées par des fonctions de comparaison plus performantes.
Version 2.0.beta13 (22-Dec-2004)
Cette révision répare un bogue introduit en 2.0.beta7 qui empêche le script refcount.php (exécuté par ?action=refcount) de générer des liens valides. Elle nettoie aussi la gestion des StylesWiki et %-dans-les-urls (ce que la version 2.0.beta7 était supposée faire).
En général, tous les sites utilisant la série 2.0.betaXX sont invités à mettre à jour suivant cette dernière révision.
Version 2.0.beta12 (21-Dec-2004)
Cette révision ajoute nombre de balises <div> et d'identificateurs autour des éléments produits par PmWiki (c.a.d. les téléchargements, les résultats de recherche, les attributs de page, etc.). Ceci facilite la mise en forme par des feuilles de style CSS.
De plus, cette révision ajoute des fonctionnalités au script urlapprove.php pour limiter le nombre de liens non approuvés qui peuvent être sauvés avec une page (pour aider le combat contre le spam wiki).
Enfin cette révision ajoute la balise (:description:)
pour générer la balise html <meta name='description' ... /> dans la sortie. (:description:)
pourra aussi être utilisée pour d'autres fonctions à venir (c.a.d. des extraits de de résultats de recherche, etc.).
Version 2.0.beta11 (19-Dec-2004)
Cette révision nettoie d'abord nombre de points liés au téléchargement:
- Une nouvelle variable $LinkUpload a été définie pour les chaînes $...Fmt -- elle contient l'URL de la page de téléchargement pour le fichier attaché en cours.
(:attachlist:)
ajoute automatiquement les liens "remplace-attachements" (marqués par des triangles) aux items de la liste.- Après avoir effectué un téléchargement, le champ du "nom de téléchargement" est automatiquement nettoyé.
- Répare le message d'erreur quand la taille excède celle admise par PHP.
Cette révision modifie aussi la fonction StopWatch() (utilisée de manière interne pour des test de performance de PmWiki) de facon a ne prendre effet que si $EnableStopWatch
est mis à 1 (horloge de base) ou 2 (horloge de base et temps d'exécution des routines).
Version 2.0.beta10 (14-Dec-2004)
Cette révision améliore significativement la procédure d'installation. En prmier lieu, les étapes d'installation ont été simplifiées, et PmWiki fournit des instructions appropriées quand l rencontre un environnement PHP "safe_mode".
Cette révision fournit aussi un meilleur traitement des fichiers '.flock' -- si PmWiki découvre qu'il ne peut ouvrir un fichier .flock en écriture, il efface le fichier et recommence au lieu de se plaindre. Ceci rend le système plus robuste lors des sauvegardes et récupérations.
Version 2.0.beta9 (14-Dec-2004)
Cette révision fournit des corrections mineures sur la balise [[target |#]]
, l'apparence des variables $... dans la documentation, et permet à uploads.php de mieux fonctionner avec l' url rewriting.
Version 2.0.beta8 (13-Dec-2004)
Cette révision propose un certain nombre de changements significatifs. D'abord et avant tout, il change la syntaxe uri de ?pagename=
vers ?n=
, et l'installation est maintenant définie par défaut avec $EnablePathInfo
= 0; pour avoir une melleures compatibilité.
Les sites qui veulent continuer à utiliser la forme des uri .../Main/HomePage
au lieu de ?n=Main.HomePage
devraient mettre $EnablePathInfo
= 1 dasn le fichier config.php.
Cette révision corrige un bogue probable dans la manipulation des noms d'auteurs qui supprimait de manière incorrecte les espaces.
2.0.beta8 inclue des fonctionnalités de style CSS avancées pour les tableaux simples? avec les variables $TableRowAttrFmt
et $TableCellAttrFmt
, ce qui sera décrit dans une astuce à venir.
Aussi, cette révision améliore grandement le support des sites en UTF-8, incluant la possibilité d'avoir des caactères UTF-8 dans les noms de pages et les liens [[utf-8 links]]
. Il reste du travail sur les détails pour permettre le support des MotsWiki UTF-8 -- les fonctions PHP n'ayant pas un bon support pour celà. Voir les scripts/xlpage-utf-8.php pour plus d'informations sur l'UTF-8.
Enfin, les balises Q: et A: sont de retour, et quelques autres corrections mineures et des améliorations sur la documentation improvements ont été ajoutées.
Version 2.0.beta7 (8-Dec-2004)
Cette révision comprend nombre d'améliorations. D'abord, elle fournit un fichier scripts/xlpage-utf-8.php, qui permet à PmWiki d'être capable de gérer à peu-près la police utf-8 dans les noms de pages. Comme les fonctions PHP's preg_* ne semblent pas capable de détecter les caractères alphanumériques UTF-8, le compromis est que les MotsWiki sont restreint à l'usage des caractères ASCII. Nous travaillons au contournement de cette restriction.
Le script xlpage-utf-8.php peut être automatiquement chargé par une XLPage? qui spécifie 'xlpage-i18n' => 'utf-8'.
Aussi dans cette révision:
- répare les fichiers .htaccess placés dans les répertoires local/ et wiki.d/
- modifie la valeur par défaut de la zone de texte pour le modèle pmwiki
- réinstalle la balise lien/citation (
[[cible |#]]
) - répare la valeur par défaut de
$DefaultPageTextFmt
(ceci pourrait encore changer) - convertit automatiquement les occurences $Newline dans le texte envoyé
Version 2.0.beta6 (5-Dec-2004)
Cette révision comprend un certains nombres de corrections mineures (voir le ChangeLog), et il reprend la function $WikiWordCount
de PmWiki 1 par laquelle un administrateur peut limiter le nombre de conversions de chaque Mot(s)Wiki.
Le fichier d'exemple sample-config.php a été mis à jour avec plus de commentaires et de suggestions de personnalisation.
Enfin, cette révision accroit la valeur par défaut de $MaxIncludes
à 50 (et fournit une meilleure documentation sur la variable $MaxIncludes
).
Version 2.0.beta5 (1-Dec-2004)
Version 2.0.beta4 (1-Dec-2004)
Cette révision répare les bogues introduits par les changements de la révision 2.0.beta3. Les utilisateurs de la 2.0.beta3 devraient faire une mise à mettre à jour.
Version 2.0.beta3 (30-Nov-2004)
Cette révison fournit une version simple de la directive (:attachlist:)
(il n'y a pas encore de tri disponible et la syntaxe est appelée à évoluer), et des corrections ont été apportées aux pages PmWiki.EditQuickReference et PmWiki.UploadQuickReference pages. Des pages par défaut sont aussi fournies pour verrouiller les mots de passe dans le groupe Main et PmWiki. Les extensions en majuscules ".GIF", ".JPG", et ".PNG" sont autorisées dans les fichiers.
De manière interne, cette révision change aussi la séquence d'édition pour utiliser la variable autoglobale $_POST au lieu de $_REQUEST (i.e., les envois d'édition ne sont autorisés qu'avec la methode 'post' et non avec les chaînes de paramètres).
Version 2.0.beta2
Cette révision répare les bogues causés par le fait que $PageTemplateFmt ne fonctionne plus dans pmwiki-2.0.beta1.
Version 2.0.beta1
Cette révision marque l'entrée de PmWiki 2.0 dans le statut "beta", alors qu'il avance vers une révision offcielle. Le changement principal de cette révision est dans le code des thèmes (skins) -- les versions précédentes de PmWiki utilisaient $PageTemplateFmt pour spécifier l'emplacement des fichiers modèles et maintenant la variable $Skin
est utilisée pour indiquer le répertoire qui contient (dans pub/skins/) les fichiers modèles, le script php de configuration, et d'autres fichiers.
En général, si vous aviez précédemment la variable $PageTemplateFmt définie comme "pub/skins/myskin/myskin.tmpl", maintenant vous pouvez simplement mettre $Skin
='myskin'. Voir BasePourLaMiseEnPage pour plus de détails.
Traduction de PmWiki.ReleaseNotes
Page originale sur PmWikiFr.ReleaseNotes - Backlinks
Dernières modifications:
PmWikiFr.ReleaseNotes: September 10, 2011, at 05:40 PM
PmWiki.ReleaseNotes: January 15, 2023, at 02:17 PM