@deprecated dans ecrire/

Je trouve ce matin dans la branche master de spip, répertoire ecrire/

57 mentions @deprecated

egrep -rin "@deprecated" ecrire

ecrire/inc/charger_php_extension.php:16: * @deprecated Utiliser la fonction native `extension_loaded($module)`
ecrire/inc/filtres.php:295: * @deprecated Utiliser version_vcs_courante()
ecrire/inc/filtres.php:1211: * @deprecated Utiliser le style CSS `word-wrap:break-word;`
ecrire/inc/filtres.php:4406: * @deprecated Utiliser le filtre `icone_verticale`
ecrire/inc/chercher_logo.php:83: * @deprecated MAIS NE PAS SUPPRIMER CAR SERT POUR L'UPGRADE des logos et leur mise en base
ecrire/inc/rubriques.php:609: * @deprecated
ecrire/inc/distant.php:661: * @deprecated
ecrire/inc/distant.php:743: * @deprecated
ecrire/inc/distant.php:925: * @deprecated
ecrire/inc/exporter_csv.php:70: * @deprecated
ecrire/inc/modifier.php:315: * @deprecated
ecrire/inc/modifier.php:341: * @deprecated
ecrire/inc/notifications.php:203: * @deprecated Ne plus utiliser
ecrire/inc/notifications.php:217: * @deprecated Ne plus utiliser
ecrire/inc/lister_objets.php:29: * @deprecated Créer ou utiliser un squelette dans `prive/objets/liste/`
ecrire/inc/autoriser.php:1759: * @deprecated utiliser auteurs_objets()
ecrire/inc/utils.php:3533: * @deprecated Utiliser `$GLOBALS['meta'][$nom]` ou `lire_config('nom')`
ecrire/inc/utils.php:3546: * @deprecated
ecrire/inc/cvt_multietapes.php:160: * @deprecated : appel direct de cvtmulti_formulaire_charger_etapes par le core
ecrire/inc/cvt_multietapes.php:200: * @deprecated : appel direct de cvtmulti_formulaire_verifier_etapes par le core
ecrire/auth/sha256.inc.php:21: * @deprecated
ecrire/auth/sha256.inc.php:35:	 * @deprecated
ecrire/req/mysql.php:194: * @deprecated Utiliser sql_query() ou autres
ecrire/req/mysql.php:1653: * @deprecated Pas d'équivalence actuellement en dehors de MySQL
ecrire/req/mysql.php:1686: * @deprecated Pas d'équivalence actuellement en dehors de MySQL
ecrire/action/editer_rubrique.php:273: * @deprecated
ecrire/action/editer_rubrique.php:291: * @deprecated
ecrire/action/editer_rubrique.php:311: * @deprecated
ecrire/action/super_cron.php:32: * @deprecated
ecrire/action/editer_auteur.php:242: * @deprecated Utiliser auteur_associer()
ecrire/action/editer_auteur.php:451: * @deprecated Utiliser auteur_inserer()
ecrire/action/editer_auteur.php:464: * @deprecated Utiliser auteur_modifier()
ecrire/action/editer_auteur.php:478: * @deprecated Utiliser auteur_instituer()
ecrire/action/editer_auteur.php:493: * @deprecated Utiliser auteur_modifier()
ecrire/action/editer_article.php:467: * @deprecated Utiliser article_modifier()
ecrire/action/editer_article.php:488: * @deprecated Utiliser article_modifier()
ecrire/action/editer_article.php:509: * @deprecated Utiliser article_modifier()
ecrire/action/editer_article.php:530: * @deprecated Utiliser article_inserer()
ecrire/action/editer_article.php:545: * @deprecated Utiliser article_instituer()
ecrire/public/criteres.php:1032: * @deprecated
ecrire/public/criteres.php:2752: * @deprecated Utiliser directement le critère {source}
ecrire/public/criteres.php:2927: * @deprecated Utiliser une boucle (DATA){source tableau,#XX}
ecrire/public/balises.php:355: * @deprecated Utiliser `#CHEMIN`
ecrire/public/balises.php:1652: * @deprecated Utiliser #VAL
ecrire/public/interfaces.php:479:	 * @deprecated Remplacé par $boucle->modificateur['criteres']['statut']
ecrire/balise/login_prive.php:29: * @deprecated Utiliser `#FORMULAIRE_LOGIN`
ecrire/balise/login_public.php:29: * @deprecated Utiliser `#FORMULAIRE_LOGIN`
ecrire/exec/fond_monobloc.php:19: * @deprecated
ecrire/exec/fond_monobloc.php:36: * @deprecated Ne plus utiliser. Migrer vers `prive/squelettes/`
ecrire/base/upgrade.php:505: * @deprecated Utiliser directement `creer_base_types_doc()` du plugin Medias
ecrire/base/upgrade.php:545: * @deprecated Utiliser `maj_plugin()` ou la globale `maj` pour le core.
ecrire/base/upgrade.php:572: * @deprecated Utiliser `maj_plugin()` ou la globale `maj` pour le core.
ecrire/base/connect_sql.php:357: * @deprecated Utiliser l'authentification LDAP de auth/ldap
ecrire/base/connect_sql.php:391: * @deprecated
ecrire/base/connect_sql.php:520: * @deprecated  Pour compatibilité. Utiliser `sql_query()` ou l'API `sql_*`.
ecrire/base/repair.php:56: * @deprecated Les fichiers .plat ne sont plus utilisés. Cette fonction n'est plus appelée depuis r14292

Est-ce qu’on fait quelque chose pour la 4.0 ?

Est-ce qu’on fait quelque chose pour la 4.0 ?

Un ticket peut-être déjà ? :slight_smile:


RastaPopoulos

On aurait du écire un « deprecated since x.y » pour se donner une idée :stuck_out_tongue: sur ces déclarations.
Certains sont récents, et bien d’autres pourraient effectivement être enlevés…
D’autres sont deprecated… mais toujours utilisés aussi quelque part…

Je dirais que tu peux faire un ticket et un PR.

Je pense qu’on peut enlever en 4.0 au moins tous les deprecated de ce type, c’est à dire ceux à base de fonction (inserer|modifier|supprimer|instituer|revisions?)_{objet} ou {objet}_set etc… qui sont là depuis assez longtemps (10 ans ?). https://git-mirror.spip.net/spip/spip/-/commit/82d1860e7f correspondant à « spip 2.3-dev » (?) donc probablement la 3.0.

Celui-là est marrant :slight_smile:

Oui, je pense qu’on jour il faudra dire… OK ce SPIP X.y il peut mettre à jour depuis SPIP {X-2}.0 par exemple, mais pas depuis en deça… Parce que conserver les migrations de bdd depuis SPIP 1.0… hum…

Pour le coup, là ce truc précis je crois que c’est quelque chose introduit sur la 4.0

J’imagine qu’il faudrait qu’on trouve (au moins dans spip et dans plugins-dist) si les fonctions php « deprecated » sont utiilisées.
Supprimer les fonctions utilisées 0 fois.
Quand c’est possible, passer à l’alternative proposée pour celles utilisées au moins 1 fois.
Puis supprimer les fonctions php « deprecated » qui le peuvent.

Pour celles qui resteraient après cette opération, trouver quand elles sont devenues « deprecated » et les marquer @deprecated since X.Y

ça serait un bon début, non ?

2 « J'aime »

Les fonctions « mentionnées » 0 fois

ecrire/action/editer_article.php,articles_set
ecrire/action/editer_article.php,insert_article
ecrire/action/editer_article.php,instituer_article
ecrire/action/editer_article.php,revision_article
ecrire/action/editer_article.php,revisions_articles
ecrire/action/editer_auteur.php,auteur_referent
ecrire/action/editer_auteur.php,insert_auteur
ecrire/action/editer_auteur.php,instituer_auteur
ecrire/action/editer_auteur.php,revision_auteur
ecrire/action/editer_rubrique.php,insert_rubrique
ecrire/action/editer_rubrique.php,instituer_rubrique
ecrire/action/editer_rubrique.php,revisions_rubriques
ecrire/auth/sha256.inc.php,_nano_sha256
ecrire/auth/sha256.inc.php,sha256
ecrire/balise/login_prive.php,balise_LOGIN_PRIVE
ecrire/balise/login_public.php,balise_LOGIN_PUBLIC
ecrire/base/connect_sql.php,table_jointure
ecrire/base/repair.php,admin_repair_plat
ecrire/base/upgrade.php,upgrade_types_documents
ecrire/base/upgrade.php,upgrade_vers
ecrire/exec/fond_monobloc.php,exec_fond_monobloc_dist
ecrire/inc/autoriser.php,auteurs_article
ecrire/inc/charger_php_extension.php,inc_charger_php_extension_dist
ecrire/inc/cvt_multietapes.php,cvtmulti_formulaire_charger
ecrire/inc/cvt_multietapes.php,cvtmulti_formulaire_verifier
ecrire/inc/filtres.php,filtre_icone_dist
ecrire/inc/filtres.php,lignes_longues
ecrire/inc/filtres.php,version_svn_courante
ecrire/inc/lister_objets.php,inc_lister_objets_dist
ecrire/inc/modifier.php,modifier_contenu
ecrire/inc/modifier.php,revision_objet
ecrire/inc/notifications.php,notifier_proposition_article
ecrire/inc/notifications.php,notifier_publication_article
ecrire/inc/rubriques.php,calcul_branche
ecrire/inc/utils.php,ecrire_metas
ecrire/public/balises.php,balise_DOSSIER_SQUELETTE_dist
ecrire/public/balises.php,balise_NOOP_dist
ecrire/public/criteres.php,critere_DATA_datasource_dist
ecrire/public/criteres.php,critere_POUR_tableau_dist
ecrire/public/criteres.php,critere_par_joint
ecrire/public/interfaces.php,declarer_interfaces
ecrire/req/mysql.php,spip_query_db
plugins-dist/medias/action/editer_document.php,document_set
plugins-dist/medias/action/editer_document.php,insert_document
plugins-dist/medias/action/editer_document.php,revision_document
plugins-dist/medias/inc/documents.php,afficher_documents_colonne
plugins-dist/medias/medias_autoriser.php,autoriser_mediatheque_administrer_dist
plugins-dist/medias/medias_fonctions.php,lien_objet
plugins-dist/mots/action/editer_groupe_mots.php,groupemots_inserer
plugins-dist/mots/action/editer_groupe_mots.php,groupemots_modifier
plugins-dist/mots/action/editer_groupe_mots.php,revision_groupe_mot
plugins-dist/mots/action/editer_mot.php,insert_mot
plugins-dist/mots/action/editer_mot.php,mots_set
plugins-dist/mots/action/editer_mot.php,revision_mot
plugins-dist/sites/action/editer_site.php,insert_syndic
plugins-dist/sites/action/editer_site.php,instituer_syndic
plugins-dist/sites/action/editer_site.php,revisions_sites
plugins-dist/sites/action/editer_site.php,syndic_set

Les fonctions « metionnées » au moins 1 fois :

ecrire/action/editer_auteur.php,auteurs_set,1
ecrire/action/super_cron.php,action_super_cron_dist,1
ecrire/base/connect_sql.php,spip_connect_ldap,1
ecrire/inc/distant.php,recuperer_entetes,1
ecrire/inc/exporter_csv.php,exporter_csv_ligne,1
ecrire/inc/utils.php,lire_meta,1
ecrire/req/mysql.php,spip_get_lock,1
ecrire/req/mysql.php,spip_release_lock,1
plugins-dist/medias/action/editer_document.php,instituer_document,1
plugins-dist/compresseur/compresseur_fonctions.php,compacte,2
ecrire/inc/chercher_logo.php,type_du_logo,3
ecrire/inc/distant.php,recuperer_lapage,3
plugins-dist/filtres_images/filtres/images_lib.php,_couleur_hsl2rgb,3
plugins-dist/filtres_images/filtres/images_lib.php,_couleur_rgb2hsl,3
ecrire/base/connect_sql.php,spip_query,4
ecrire/inc/distant.php,recuperer_page,11
ecrire/base/upgrade.php,maj_version,127

^^

mentionnées, dans ce rapport, c’est soit dans un commentaire du type @uses fonction() soit de manière statique, en php, genre truc = fonction(...);

Évidement il y a les |filtres{...}, les {critères ..}, les #BALISES, les charger_fonction() à vérifier. J’y vais de ce pas …

Il y a aussi les cas que je ne connais pas, n’hésitez pas à faire vos retours. :slight_smile:

Voilà ce que je trouve :

Pour les |filtres

|lignes_longues,22
|icone,1
|compacte,9

et aucun filtre @deprecated n’est appelé via #FILTTRE

Pour les {critères ..}

{tableau ...},30

Pour les #BALISES

#LOGIN_PRIVE,0
#LOGIN_PUBLIC,0
#DOSSIER_SQUELETTE,0
#NOOP,0

Pour les charger_fonction()

charger_fonction('lister_objets'...),3

Nouvelles listes :

foncions php utilisées nulles part dans spip ou les plugins-dist :

ecrire/action/editer_article.php,articles_set
ecrire/action/editer_article.php,insert_article
ecrire/action/editer_article.php,instituer_article
ecrire/action/editer_article.php,revision_article
ecrire/action/editer_article.php,revisions_articles
ecrire/action/editer_auteur.php,auteur_referent
ecrire/action/editer_auteur.php,insert_auteur
ecrire/action/editer_auteur.php,instituer_auteur
ecrire/action/editer_auteur.php,revision_auteur
ecrire/action/editer_rubrique.php,insert_rubrique
ecrire/action/editer_rubrique.php,instituer_rubrique
ecrire/action/editer_rubrique.php,revisions_rubriques
ecrire/auth/sha256.inc.php,_nano_sha256
ecrire/auth/sha256.inc.php,sha256
ecrire/balise/login_prive.php,balise_LOGIN_PRIVE
ecrire/balise/login_public.php,balise_LOGIN_PUBLIC
ecrire/base/connect_sql.php,table_jointure
ecrire/base/repair.php,admin_repair_plat
ecrire/base/upgrade.php,upgrade_types_documents
ecrire/base/upgrade.php,upgrade_vers
ecrire/exec/fond_monobloc.php,exec_fond_monobloc_dist
ecrire/inc/autoriser.php,auteurs_article
ecrire/inc/charger_php_extension.php,inc_charger_php_extension_dist
ecrire/inc/cvt_multietapes.php,cvtmulti_formulaire_charger
ecrire/inc/cvt_multietapes.php,cvtmulti_formulaire_verifier
ecrire/inc/filtres.php,version_svn_courante
ecrire/inc/modifier.php,modifier_contenu
ecrire/inc/modifier.php,revision_objet
ecrire/inc/notifications.php,notifier_proposition_article
ecrire/inc/notifications.php,notifier_publication_article
ecrire/inc/rubriques.php,calcul_branche
ecrire/inc/utils.php,ecrire_metas
ecrire/public/balises.php,balise_DOSSIER_SQUELETTE_dist
ecrire/public/balises.php,balise_NOOP_dist
ecrire/public/criteres.php,critere_DATA_datasource_dist
ecrire/public/criteres.php,critere_par_joint
ecrire/public/interfaces.php,declarer_interfaces
ecrire/req/mysql.php,spip_query_db
plugins-dist/medias/action/editer_document.php,document_set
plugins-dist/medias/action/editer_document.php,insert_document
plugins-dist/medias/action/editer_document.php,revision_document
plugins-dist/medias/inc/documents.php,afficher_documents_colonne
plugins-dist/medias/medias_autoriser.php,autoriser_mediatheque_administrer_dist
plugins-dist/medias/medias_fonctions.php,lien_objet
plugins-dist/mots/action/editer_groupe_mots.php,groupemots_inserer
plugins-dist/mots/action/editer_groupe_mots.php,groupemots_modifier
plugins-dist/mots/action/editer_groupe_mots.php,revision_groupe_mot
plugins-dist/mots/action/editer_mot.php,insert_mot
plugins-dist/mots/action/editer_mot.php,mots_set
plugins-dist/mots/action/editer_mot.php,revision_mot
plugins-dist/sites/action/editer_site.php,insert_syndic
plugins-dist/sites/action/editer_site.php,revisions_sites
plugins-dist/sites/action/editer_site.php,syndic_set

J’ai encore des doutes, notamment concernant les fonctions suivantes :

critere_par_joint
autoriser_mediatheque_administrer_dist

et quelques autres … toute aide est bienvenue :wink:

fonctions php au moins utilsées 1 fois dans spip ou les plugins-dist :

ecrire/action/editer_auteur.php,auteurs_set,1
ecrire/action/super_cron.php,action_super_cron_dist,1
ecrire/base/connect_sql.php,spip_connect_ldap,1
ecrire/inc/distant.php,recuperer_entetes,1
ecrire/inc/exporter_csv.php,exporter_csv_ligne,1
ecrire/inc/filtres.php,filtre_icone_dist,1
ecrire/inc/utils.php,lire_meta,1
ecrire/req/mysql.php,spip_get_lock,1
ecrire/req/mysql.php,spip_release_lock,1
plugins-dist/medias/action/editer_document.php,instituer_document,1
ecrire/inc/chercher_logo.php,type_du_logo,3
ecrire/inc/distant.php,recuperer_lapage,3
ecrire/inc/lister_objets.php,inc_lister_objets_dist,3
plugins-dist/filtres_images/filtres/images_lib.php,_couleur_hsl2rgb,3
plugins-dist/filtres_images/filtres/images_lib.php,_couleur_rgb2hsl,3
ecrire/base/connect_sql.php,spip_query,4
ecrire/inc/distant.php,recuperer_page,11
plugins-dist/compresseur/compresseur_fonctions.php,compacte,11
ecrire/inc/filtres.php,lignes_longues,22
ecrire/public/criteres.php,critere_POUR_tableau_dist,30
ecrire/base/upgrade.php,maj_version,127

à noter aussi :

la propriété $statut de l’objet Boucle

qu’on retrouve cenpendant dans la fonction calculer_critere_infixe() du fichier ecrire/public/criteres.php

Et le p’tit dernier :

un @deprected où il manque le ‹ a ›

ci-dessous 2 tableaux qui recoupent les fonctions encore là dans le code, et la version trouvée pour le commit correspondant au dernier (et parfois premier) changement du commentaire @deprecated ce qui permet de déduire la version de spip (dans ecrire/inc_version.php)

ça permet d’ajouter le @deprecated since X.Y pour ces fonctions. pour 3.1.0-dev je propose 3.1. Pour 3.3.0-dev4.0

fichier fonction commit date version commentaire @deprecated de la fonction
ecrire/inc/filtres.php lignes_longues a47259a20f 2013-02-09 3.1.0-dev « @deprecated Utiliser le style CSS word-wrap:break-word; »
ecrire/inc/filtres.php filtre_icone_dist 5982ecf564 2013-09-03 3.1.0-dev « @deprecated Utiliser le filtre icone_verticale »
ecrire/inc/chercher_logo.php type_du_logo e11cc93ae7 2019-07-25 3.3.0-dev « @deprecated MAIS NE PAS SUPPRIMER CAR SERT POUR L’UPGRADE des logos et leur mise en base »
ecrire/inc/distant.php recuperer_page 5d3001212c 2013-02-26 3.1.0-dev « @deprecated »
ecrire/inc/distant.php recuperer_lapage 5d3001212c 2013-02-26 3.1.0-dev « @deprecated »
ecrire/inc/distant.php recuperer_entetes 5d3001212c 2013-02-26 3.1.0-dev « @deprecated »
ecrire/inc/exporter_csv.php exporter_csv_ligne b835082a25 2021-02-15 3.3.0-dev « @deprecated »
ecrire/inc/lister_objets.php inc_lister_objets_dist 0ca694d170 2013-02-13 3.1.0-dev « @deprecated Créer ou utiliser un squelette dans prive/objets/liste/ »
ecrire/inc/utils.php lire_meta 400bc9d61e 2013-02-25 3.1.0-dev « @deprecated Utiliser '$GLOBALS[‹ meta ›][$nom]oulire_config(‹ nom ›) »
ecrire/action/super_cron.php action_super_cron_dist 65f8ba2dc8 2020-09-11 3.3.0-dev « @deprecated »
ecrire/action/editer_auteur.php auteurs_set 642b5324b8 2013-02-19 3.1.0-dev « @deprecated Utiliser auteur_modifier() »
ecrire/public/criteres.php critere_POUR_tableau_dist d0e4b43349 2012-08-07 3.1.0-dev « @deprecated Utiliser une boucle (DATA){source tableau,#XX} »
ecrire/public/interfaces.php « public $statut = false; » dddf916787 2012-08-05 3.1.0-dev « @deprecated Remplacé par $boucle->modificateur[‹ criteres ›][‹ statut ›] »
ecrire/base/upgrade.php maj_version 44c3de1d2c 2013-05-30 3.1.0-dev « @deprecated Utiliser maj_plugin() ou la globale maj pour le core. »
ecrire/base/connect_sql.php table_jointure b3dcf1dca5 2013-03-25 3.1.0-dev « @deprecated »
ecrire/base/connect_sql.php spip_query 662b48f193 2013-02-25 3.1.0-dev « @deprecated Pour compatibilité. Utiliser sql_query() ou l’API sql_*. »
fichier fonction commit date version commentaire @deprecated de la fonction
plugins-dist/compresseur/compresseur_fonctions.php compacte 691d6f96 2012-08-21 1.6.8 « @deprecated Utiliser minifier() »

En ce qui concerne tickets et PR, je suis embarrassé, parce que je pense qu’il faut plusieurs tickets, soit pour SPIP, soit pour les plugins-dist, parfois, ils seront indépendants, parfois, ils seront liés les uns aux autres. J’avoue que je ne sais pas trop comment m’y prendre.

Des avis ?

Eh bah, quelle analyse !

Concernant le PHPDoc, la suggestion maintenant fig-standards/phpdoc-tags.md at master · php-fig/fig-standards · GitHub est de coupler deux choses :

  • le tag @deprecated, avec à partir de quand c’est déprécié avec éventuellement une description ,
  • et le tag @see, s’il y a un remplacement
@deprecated 3.1.0
@deprecated 3.1.0 Ne plus utiliser. Sera supprimé dans une future version.
@see alternative() en remplacement.
1 « J'aime »

Il est important de noter à ce stade que « plugins-dist » signifie les plugins « dist » de SPIP4 (puisque ces analyses sont faites dans la branche « master »)

Ce qui implique que les ex-plugins-dist n’ont pas été vérifiés.

Rappel: les ex-plugins-dist :

  • breves
  • jquery_ui
  • organiseur
  • petitions
  • squelettes_par_rubrique
  • vertebres

Encore une liste, les fichiers:numero_de_ligne: ou on trouve un appel à une fonction @deprecated

inc_lister_objets_dist()

plugins-dist/sites/sites_pipelines.php:25:		$lister_objets = charger_fonction('lister_objets', 'inc');
plugins-dist/sites/sites_pipelines.php:100:	$lister_objets = charger_fonction('lister_objets', 'inc');
plugins-dist/sites/sites_pipelines.php:161:			$lister_objets = charger_fonction('lister_objets', 'inc');

auteurs_set()

ecrire/action/supprimer_rubrique.php:54:				auteurs_set($id_auteur, array("statut" => '1comite'));

action_super_cron_dist()

ecrire/inc/utils.php:1043: * @see  action_super_cron_dist()

spip_connect_ldap()

ecrire/auth/ldap.php:217:	if (!$ldap = spip_connect_ldap($serveur)) {

spip_query()

ecrire/inc/meta.php:80:	if ($result = spip_query("SELECT nom,valeur FROM spip_$table")) {
ecrire/public/debusquer.php:779:		$ress_req = spip_query($req);
ecrire/req/mysql.php:1728:	$ok = spip_query("INSERT INTO spip_meta (nom,valeur) VALUES ('mysql_rappel_nom_base', 'test')", $server_db);
plugins-dist/statistiques/genie/popularites.php:98:			spip_query("UPDATE spip_referers SET visites_veille=visites_jour, visites_jour=0");

maj_version()

ecrire/maj/legacy/v009.php:57:		maj_version(0.98);
ecrire/maj/legacy/v009.php:129:		maj_version(0.99);
ecrire/maj/legacy/v009.php:134:		maj_version(0.997);
ecrire/maj/legacy/v009.php:148:		maj_version(0.999);
ecrire/maj/legacy/v010.php:33:		maj_version(1.01);
ecrire/maj/legacy/v010.php:38:		maj_version(1.02);
ecrire/maj/legacy/v010.php:43:		maj_version(1.03);
ecrire/maj/legacy/v010.php:48:		maj_version(1.04);
ecrire/maj/legacy/v010.php:54:		maj_version(1.05);
ecrire/maj/legacy/v011.php:33:		maj_version(1.1);
ecrire/maj/legacy/v012.php:37:		maj_version(1.204);
ecrire/maj/legacy/v012.php:47:		maj_version(1.207);
ecrire/maj/legacy/v012.php:65:		maj_version(1.208);
ecrire/maj/legacy/v012.php:72:		maj_version(1.209);
ecrire/maj/legacy/v012.php:89:		maj_version(1.210);
ecrire/maj/legacy/v013.php:39:		maj_version(1.3);
ecrire/maj/legacy/v013.php:44:		maj_version(1.301);
ecrire/maj/legacy/v013.php:52:		maj_version(1.302);
ecrire/maj/legacy/v013.php:59:		maj_version(1.303);
ecrire/maj/legacy/v013.php:66:		maj_version(1.306);
ecrire/maj/legacy/v013.php:71:		maj_version(1.307);
ecrire/maj/legacy/v014.php:42:		maj_version(1.404);
ecrire/maj/legacy/v014.php:54:		maj_version(1.405);
ecrire/maj/legacy/v014.php:100:		maj_version(1.408);
ecrire/maj/legacy/v014.php:111:		maj_version(1.414);
ecrire/maj/legacy/v014.php:123:		maj_version(1.417);
ecrire/maj/legacy/v014.php:132:		maj_version(1.418);
ecrire/maj/legacy/v014.php:139:		maj_version(1.419);
ecrire/maj/legacy/v014.php:144:		maj_version(1.420);
ecrire/maj/legacy/v014.php:150:		maj_version(1.421);
ecrire/maj/legacy/v014.php:157:		maj_version(1.432);
ecrire/maj/legacy/v014.php:162:		maj_version(1.436);
ecrire/maj/legacy/v014.php:168:		maj_version(1.437);
ecrire/maj/legacy/v014.php:174:		maj_version(1.438);
ecrire/maj/legacy/v014.php:182:		maj_version(1.439);
ecrire/maj/legacy/v014.php:187:		maj_version(1.440);
ecrire/maj/legacy/v014.php:194:		maj_version(1.441);
ecrire/maj/legacy/v014.php:199:		maj_version(1.442);
ecrire/maj/legacy/v014.php:207:		maj_version(1.443);
ecrire/maj/legacy/v014.php:212:		maj_version(1.444);
ecrire/maj/legacy/v014.php:220:		maj_version(1.457);
ecrire/maj/legacy/v014.php:225:		maj_version(1.458);
ecrire/maj/legacy/v014.php:241:		maj_version(1.459);
ecrire/maj/legacy/v014.php:258:		maj_version(1.460);
ecrire/maj/legacy/v014.php:263:		maj_version(1.462);
ecrire/maj/legacy/v014.php:270:		maj_version(1.463);
ecrire/maj/legacy/v014.php:281:		maj_version(1.464);
ecrire/maj/legacy/v014.php:286:		maj_version(1.465);
ecrire/maj/legacy/v014.php:291:		maj_version(1.466);
ecrire/maj/legacy/v014.php:297:		maj_version(1.468);
ecrire/maj/legacy/v014.php:306:		maj_version(1.470);
ecrire/maj/legacy/v014.php:323:		maj_version(1.471);
ecrire/maj/legacy/v014.php:328:		maj_version(1.472);
ecrire/maj/legacy/v014.php:334:		maj_version(1.473);
ecrire/maj/legacy/v016.php:35:		maj_version(1.600);
ecrire/maj/legacy/v016.php:40:		maj_version(1.601);
ecrire/maj/legacy/v016.php:48:		maj_version(1.603);
ecrire/maj/legacy/v016.php:61:		maj_version(1.604, $u);
ecrire/maj/legacy/v017.php:55:		maj_version(1.702, $u);
ecrire/maj/legacy/v017.php:61:		maj_version(1.703);
ecrire/maj/legacy/v017.php:68:		maj_version(1.704);
ecrire/maj/legacy/v017.php:74:		maj_version(1.705);
ecrire/maj/legacy/v017.php:82:		maj_version(1.707);
ecrire/maj/legacy/v017.php:88:		maj_version(1.708);
ecrire/maj/legacy/v017.php:94:		maj_version(1.709);
ecrire/maj/legacy/v017.php:99:		maj_version(1.717);
ecrire/maj/legacy/v017.php:106:		maj_version(1.718);
ecrire/maj/legacy/v017.php:118:		maj_version(1.722);
ecrire/maj/legacy/v017.php:127:		maj_version(1.723);
ecrire/maj/legacy/v017.php:132:		maj_version(1.724);
ecrire/maj/legacy/v017.php:137:		maj_version(1.726);
ecrire/maj/legacy/v017.php:146:		maj_version(1.727);
ecrire/maj/legacy/v017.php:152:		maj_version(1.728);
ecrire/maj/legacy/v017.php:172:		maj_version(1.730);
ecrire/maj/legacy/v017.php:180:		maj_version(1.731);
ecrire/maj/legacy/v017.php:186:		maj_version(1.732);
ecrire/maj/legacy/v017.php:194:		maj_version(1.733);
ecrire/maj/legacy/v017.php:200:	#	maj_version(1.734);
ecrire/maj/legacy/v018.php:33:		maj_version(1.801);
ecrire/maj/legacy/v018.php:52:		maj_version(1.802);
ecrire/maj/legacy/v018.php:61:		maj_version(1.803);
ecrire/maj/legacy/v018.php:67:		maj_version(1.804);
ecrire/maj/legacy/v018.php:103:		maj_version(1.805);
ecrire/maj/legacy/v018.php:108:	#	maj_version(1.806);
ecrire/maj/legacy/v018.php:116:		maj_version(1.807);
ecrire/maj/legacy/v018.php:122:		maj_version(1.808);
ecrire/maj/legacy/v018.php:141:		maj_version(1.809);
ecrire/maj/legacy/v018.php:147:		maj_version(1.810);
ecrire/maj/legacy/v018.php:152:		maj_version(1.811);
ecrire/maj/legacy/v018.php:157:		maj_version(1.812);
ecrire/maj/legacy/v018.php:163:		maj_version(1.813);
ecrire/maj/legacy/v018.php:170:		maj_version(1.814);
ecrire/maj/legacy/v018.php:177:		maj_version(1.815);
ecrire/maj/legacy/v018.php:182:		maj_version(1.816);
ecrire/maj/legacy/v018.php:189:		maj_version(1.817);
ecrire/maj/legacy/v018.php:197:		maj_version(1.818);
ecrire/maj/legacy/v018.php:204:		maj_version(1.819);
ecrire/maj/legacy/v018.php:217:		maj_version(1.820);
ecrire/maj/legacy/v018.php:223:		maj_version(1.821);
ecrire/maj/legacy/v018.php:229:		maj_version(1.822);
ecrire/maj/legacy/v018.php:233:		maj_version(1.825);
ecrire/maj/legacy/v018.php:237:		maj_version(1.826);
ecrire/maj/legacy/v019_pre193.php:33:		maj_version(1.901);
ecrire/maj/legacy/v019_pre193.php:41:		maj_version(1.902);
ecrire/maj/legacy/v019_pre193.php:50:		maj_version(1.903);
ecrire/maj/legacy/v019_pre193.php:58:		maj_version(1.904);
ecrire/maj/legacy/v019_pre193.php:111:		maj_version(1.905);
ecrire/maj/legacy/v019_pre193.php:122:		maj_version(1.906);
ecrire/maj/legacy/v019_pre193.php:126:		maj_version(1.907);
ecrire/maj/legacy/v019_pre193.php:132:		maj_version(1.908);
ecrire/maj/legacy/v019_pre193.php:141:		maj_version(1.909);
ecrire/maj/legacy/v019_pre193.php:148:		maj_version(1.910);
ecrire/maj/legacy/v019_pre193.php:164:		maj_version(1.911);
ecrire/maj/legacy/v019_pre193.php:176:		maj_version(1.912);
ecrire/maj/legacy/v019_pre193.php:182:		maj_version(1.913);
ecrire/maj/legacy/v019_pre193.php:189:		maj_version(1.914);
ecrire/maj/legacy/v019_pre193.php:194:		maj_version(1.915);
ecrire/maj/legacy/v019_pre193.php:205:		maj_version(1.916);
ecrire/maj/legacy/v019_pre193.php:209:		maj_version(1.917);
ecrire/maj/legacy/v019_pre193.php:216:		maj_version(1.918);
ecrire/maj/legacy/v019_pre193.php:221:		maj_version('1.919');
ecrire/maj/legacy/v019_pre193.php:231:		maj_version('1.920');
ecrire/maj/legacy/v019_pre193.php:262:		maj_version('1.922');
ecrire/maj/legacy/v019_pre193.php:274:		maj_version('1.923');
ecrire/maj/legacy/v019_pre193.php:279:		maj_version('1.924');
ecrire/maj/legacy/v019_pre193.php:333:		maj_version('1.925');
ecrire/maj/legacy/v019_pre193.php:339:		maj_version('1.926');

type_du_logo()

ecrire/action/editer_logo.php:163:	$type = type_du_logo($_id_objet);
ecrire/inc/chercher_logo.php:26: * @uses type_du_logo()
ecrire/inc/chercher_logo.php:55:			$type = type_du_logo($_id_objet);

recuperer_page()

ecrire/inc/distant.php:1107:	if ($headers = recuperer_page($source, false, true, $max, '', '', true)) {
ecrire/inc/distant.php:1221:		$page = recuperer_page($source, true, false, _INC_DISTANT_MAX_SIZE);
ecrire/inc/filtres.php:3009: * @uses recuperer_page() si l'URL source n'est pas sur le même site
ecrire/inc/filtres.php:3039:			if (!$contenu = recuperer_page($css)) {
ecrire/inc/filtres_mime.php:184:				. str_replace('<', '', recuperer_page($m[1]));
ecrire/inc/math.php:52:			recuperer_page($url, $fichier);
ecrire/inc/xml.php:53:		$contenu = recuperer_page($fichier, false, false, $taille_max, $datas);
ecrire/iterateur/data.php:317:							$data = recuperer_page($src, false, false, _DATA_SOURCE_MAX_SIZE);
prive/formulaires/configurer_relayeur.php:59:				$page = recuperer_page($test_proxy, true);
plugins-dist/compresseur/inc/compresseur.php:291:			if (!$contenu = recuperer_page($css)) {
plugins-dist/sites/inc/feedfinder.php:60:		$buffer = recuperer_page($url);

recuperer_lapage()

ecrire/inc/acces.php:373: * @uses recuperer_lapage()
ecrire/inc/acces.php:413:			$ht = recuperer_lapage($t, false, 'HEAD', 0);
plugins-dist/sites/syndic/atomrss.php:388:				$res = recuperer_lapage($target, false, "GET", 4096);

recuperer_entetes()

ecrire/inc/distant.php:371: * @uses recuperer_entetes()

exporter_csv_ligne()

ecrire/inc/exporter_csv.php:89: * @uses exporter_csv_ligne()

lire_meta()

ecrire/inc/filtres_images_mini.php:515:	if (function_exists("image_recadre") && lire_meta("image_process")=="gd2")

spip_get_lock()

ecrire/req/mysql.php:1687: * @see spip_get_lock()

spip_release_lock()

ecrire/req/mysql.php:1654: * @see spip_release_lock()

compacte()

ecrire/inc/minipres.php:35: * @uses compacte() si le plugin compresseur est présent
ecrire/inc/minipres.php:70:				$file = compacte($file);
plugins-dist/compresseur/tests/compacte.html:13:[(#CHEMIN{javascript/layer.js}|compacte
plugins-dist/compresseur/tests/compacte.html:19:[(#CHEMIN{javascript/layer.js}|compacte
plugins-dist/compresseur/tests/compacte.html:22:	|?{ [(#SET{err2,#VAL{'erreur commentaire present:'}|concat{#CHEMIN{javascript/layer.js}|compacte
plugins-dist/medias/prive/squelettes/contenu/documents.html:4:[(#INCLURE{javascript/medias_edit.js}|compacte{js})]
plugins-dist/medias/prive/squelettes/inclure/colonne-documents.html:16:[(#INCLURE{javascript/medias_edit.js}|compacte{js})]
plugins-dist/medias/prive/squelettes/inclure/portfolio-documents.html:58:[(#INCLURE{javascript/medias_edit.js}|compacte{js})]
plugins-dist/medias/prive/squelettes/inclure/portfolio-documents.html:65:[(#INCLURE{fond=javascript/gestion_listes_documents.js}|compacte{js})]
prive/formulaires/dateur/inc-dateur.html:176:[(#INCLURE{formulaires/dateur/time_picker.css}|compacte{css})]
prive/formulaires/dateur/inc-dateur.html:177:[(#INCLURE{formulaires/dateur/bootstrap-datepicker.standalone.css}|compacte{css})]

lignes_longues()

plugins-dist/forum/formulaires/inc-forum_previsu.html:14:							[<div class="comment-texte">(#ENV*{texte}|lignes_longues)</div>]
plugins-dist/forum/formulaires/inc-forum_previsu.html:15:							[<div class="comment-notes">(#ENV*{notes}|lignes_longues)</div>]
plugins-dist/forum/formulaires/inc-forum_prive_previsu.html:10:						[(#ENV*{texte}|lignes_longues)]
plugins-dist/forum/formulaires/inc-forum_prive_previsu.html:11:						[<div class="notes">(#ENV*{notes}|lignes_longues)</div>]
plugins-dist/forum/prive/modeles/forum.html:30:[<div class='texte controle'>(#TEXTE|lignes_longues)</div>]
plugins-dist/forum/prive/modeles/forum.html:38:[<div class='notes controle'>(#NOTES|lignes_longues)</div>]
plugins-dist/forum/prive/modeles/forum.html:39:[<div class='site'><:info_url:></:info_url:><a href='#URL_SITE'>(#NOM_SITE|sinon{#URL_SITE}|lignes_longues)</a></div>]
plugins-dist/forum/prive/objets/liste/participer_forum.html:30:				[(#TEXTE|lignes_longues)]
plugins-dist/forum/prive/objets/liste/participer_forum.html:31:				[<div class='notes'>(#NOTES|lignes_longues)</div>]
plugins-dist/forum/prive/objets/liste/participer_forum_thread.html:30:				[(#TEXTE|lignes_longues)]
plugins-dist/forum/prive/objets/liste/participer_forum_thread.html:31:				[<div class='notes'>(#NOTES|lignes_longues)</div>]
plugins-dist/forum/prive/objets/liste/participer_forum_thread.html:65:						[(#TEXTE|lignes_longues)]
plugins-dist/forum/prive/objets/liste/participer_forum_thread.html:66:						[<div class='notes'>(#NOTES|lignes_longues)</div>]
plugins-dist/sites/prive/modeles/syndic_article.html:14:[<div class='texte'>(#DESCRIPTIF|lignes_longues)</div>]
plugins-dist/sites/prive/modeles/syndic_article.html:15:[<div class='notes'>(#NOTES|lignes_longues)</div>]
plugins-dist/sites/prive/modeles/syndic_article.html:16:[<div class='site'><a href='#URL_SOURCE'>(#SOURCE|sinon{#URL_SOURCE}|lignes_longues)</a></div>]
squelettes-dist/forum.html:34:				[<div class="#EDIT{texte} comment-texte">(#TEXTE|lignes_longues)</div>]
squelettes-dist/forum.html:35:				[<div class="comment-notes">(#NOTES|lignes_longues)</div>]
squelettes-dist/inclure/forum.html:22:				[(#TEXTE|lignes_longues)]
squelettes-dist/inclure/forum.html:23:				[<div class="comment-notes">(#NOTES|safehtml|lignes_longues)</div>]
squelettes-dist/inclure/forum.html:47:						[(#TEXTE|lignes_longues)]
squelettes-dist/inclure/forum.html:48:						[<div class="comment-notes">(#NOTES|safehtml|lignes_longues)</div>]

filtre_icone_dist()

plugins-dist/medias/prive/squelettes/inclure/ajouter-documents.html:10:[(#SELF|parametre_url{ajouter,oui}|icone{

critere_POUR_tableau_dist()

plugins-dist/dump/formulaires/inc-lister-sauvegardes.html:22:			<BOUCLE_dump(POUR){tableau #ENV{_dir_dump,#REM|dump_repertoire}|dump_lister_sauvegardes{#ENV{tri,nom}}}>
plugins-dist/mediabox/formulaires/configurer_mediabox.html:46:				<BOUCLE_boxtypes(POUR){tableau #ENV{_libs}}>
plugins-dist/mots/formulaires/inc-choisir-groupemots-tables-liees.html:1:<BOUCLE_objets(POUR){tableau #REM|lister_tables_objets_sql}{cle!=spip_mots}{cle!=spip_groupes_mots}>[(#VALEUR{editable}|oui)
plugins-dist/mots/prive/objets/contenu/groupe_mots.html:4:<BOUCLE_tables(POUR){tableau #TABLES_LIEES|explode{','}}{', '}>[
plugins-dist/revisions/formulaires/configurer_revisions_objets.html:14:				<BOUCLE_objets(POUR){tableau #REM|lister_tables_objets_sql}>[(#VALEUR*|test_objet_versionable)
plugins-dist/revisions/prive/objets/contenu/revision.html:1:<BOUCLE_champs(POUR){tableau #ENV*{textes}}>
plugins-dist/sites/prive/squelettes/inclure/boutons-filtres-statut-syndic.html:6:<BOUCLE_st(POUR){tableau #ARRAY{0,publie,1,dispo,2,off,3,refuse}}>
plugins-dist/statistiques/prive/squelettes/contenu/stats_referers.html:40:								<BOUCLE_sous(POUR){tableau #VALEUR{referers}}>
prive/formulaires/configurer_multilinguisme.html:53:			<BOUCLE_objets(POUR){tableau #REM|lister_tables_objets_sql}{cle!=spip_rubriques}{cle!=spip_auteurs}{si #ENV{editable}}>[(#CLE|table_supporte_lang|et{#VALEUR{type}|objet_info{editable}})
prive/formulaires/configurer_preferences.html:62:				]<BOUCLE_couleurs(POUR){tableau #ENV{couleurs}}>
prive/formulaires/declarer_bases.html:21:					<BOUCLE_serv(POUR){tableau #ENV*{_serveurs}}>
prive/formulaires/declarer_bases_2.html:17:				<BOUCLE_db(POUR){tableau #ENV*{_bases_prop}}>
prive/formulaires/inc-instituer_auteur.html:7:<BOUCLE_statuts(POUR){tableau #VAL{tous}|auteurs_lister_statuts{0}}{valeur!=nouveau}>
prive/formulaires/inc-options-langues.html:1:<BOUCLE_langues(POUR){tableau #ENV*{name}|liste_options_langues}>
prive/formulaires/instituer_objet.html:26:						<BOUCLE_choix(POUR){tableau #ENV{_statuts}}{si #ENV{editable}}>
prive/formulaires/selecteur/generique.html:27:<BOUCLE_selected(POUR){tableau #ENV{selected}|picker_selected}>
prive/formulaires/selecteur/inc-sel-rubriques.html:1:<BOUCLE_pour(POUR){tableau #ENV{selected}|picker_selected{rubrique}}>
prive/formulaires/selecteur/lister.html:21:<BOUCLE_objets(POUR){tableau #ENV{objets/afficher}}>
prive/modeles/pagination.html:26:		<BOUCLE_pages(POUR){tableau #GET{pages}}>[
prive/modeles/pagination_prive.html:27:		<BOUCLE_pages(POUR){tableau #GET{pages}}>[
prive/objets/liste/objets-en-edition.html:4:<BOUCLE_objets(POUR){tableau #SESSION{id_auteur}|liste_drapeau_edition}>[
prive/objets/liste/objets-trad.html:18:	<BOUCLE_liste_obj(POUR){tableau #ENV{id_trad}|lister_traductions{#ENV{objet}}}{pagination #ENV{nb,10}}{!lang_select}>
prive/squelettes/contenu/auteurs.html:9:		<BOUCLE_st(POUR){tableau #GET{statuts}}{si #GET{statuts}|count|>{1}}>
prive/squelettes/contenu/recherche.html:7:	<BOUCLE_tablesid(POUR){tableau #REM|liste_des_champs}
prive/squelettes/contenu/recherche.html:18:<BOUCLE_tables(POUR){tableau #REM|liste_des_champs}
prive/squelettes/contenu/visiteurs.html:9:		<BOUCLE_st(POUR){tableau #GET{statuts}}{si #GET{statuts}|count|>{1}}>
prive/squelettes/inclure/accueil-information.html:25:			<BOUCLE_cpta(POUR){tableau #EVAL{$GLOBALS['liste_des_statuts']}}><BOUCLE_auts(AUTEURS){statut=#VALEUR}{tout} />
prive/themes/spip/picker.css.html:208:<BOUCLE_objets(POUR){tableau (#REM|lister_tables_objets_sql)}>
prive/themes/spip/style_prive.css.html:59:<BOUCLE_css(POUR){tableau #GET{modules}}>
prive/themes/spip/style_prive.css.html:72:<BOUCLE_cssplugins(POUR){tableau #VAL{prive/}|find_all_in_path{/style_prive_plugin_}}>

Il faut sortir tout LDAP en plugin… et pas grand monde n’y connait grand chose !

Ma proposition serait qu’on ne conserve que les mises à jour y X-2 de SPIP. C’est à dire en SPIP 4, de ne permettre de migrer que depuis SPIP 2.0 minimum par exemple. ET donc virer tout ce qui est antérieur à 2.0…

Alors il faudrait aussi indiquer que la boucle POUR est deprecated ! Il y a encore pas mal d’usages.
Et changer le core pour la boucle DATA.

2 « J'aime »

J’ai regardé le code (core, plugins-dist, zone) et aucun ne semble utiliser le ->statut sur une boucle maintenant. Donc je pense que y a pas de problème à l’enlever.

1 « J'aime »

Je suis d’accord avec ça. Il y a d’ailleurs une série de tickets ici, en effet.

Mais sortir du code du core de SPIP, c’est une chose. La maintenance d’un nouveau plugin en est une autre, surtout si la fonctionnalité est peu ou pas utilisée.

LDAP dans SPIP, ça n’emballe pas grand monde, moi y compris. C’est un peu comme PostgreSQL.

Il faudrait qu’il y ait des spipeur·e·s qui manifestent au moins un intérêt pour ces technologies. À défaut de quoi, on pourrait les sortir du core et mettre ce type de plugin dans le grenier directement ?

Assez d’accord là-dessus aussi.

Les SPIP1.9 ne représenteraient à ce jour qu’environ 6.2% des sites vérifés. On n’a a priori plus de 1.8 ou moins dans la nature.

Cela signifierait que ces sites, si on considère qu’ils ne sont pas abandonnés et qu’ils pourraient peut-être être mis à jour par quelqu’un, pourraient passer par un upgrade en 3.2 (quitte à ce que ce soit en plusieurs étapes, notamment l’upgrade PHP pour l’écrasante majorité d’entre eux). Ça pourrait être documenté quelque part dans Évolutions et mises à jour