La fin du .info

L'arrivée prochaine de Drupal 8 marquera la mort d'un (des nombreux) aliens de Drupal : le fichier ".info".

Ce fameux ".info", indispensable à tout module, thème ou encore profil d'installation sera remplacé dans un fichier YAML.

Évidemment, la principale motivation de ce changement est de pouvoir assurer une certaine consistance avec le reste de drupal (le nouveau système de routage utilisera aussi des fichiers YAML). Et bien sûr, l'adoption de la norme YAML consiste également en un switch vers un format bien connu et surtout standard.

Ce changement se traduit donc par la conversion de tous les anciens fichiers ".info" en ".info.yml".

Pour la majorité des anciennes instructions, le simple remplacement des "=" en ":" fera le plus gros du boulot. Pour toutes les déclarations qui avaient la forme de tableaux (c'est à dire, avec un "[]" dedans), la forme sera :

dependencies:
  - node

Autre exemple avec les feuilles de style, anciennement de la forme :

; Stylesheets
stylesheets[all][] = css/layout.css
stylesheets[all][] = css/style.css
stylesheets[print][] = css/print.css

Ceci deviendra :

# Stylesheets
stylesheets:
  all:
    - css/layout.css
    - css/style.css
  print:
    - css/print.css

Comme vous avez pu le voir dans l'exemple précédent, pour insérer un commentaire, il ne faudra plus utiliser un ";" mais un "#" en début de ligne.

Enfin, on note l'arrivée d'une nouvelle clé : "type". Celle-ci, obligatoire, aura pour valeur "module", "theme", ou encore "profile". Je crois que vous avez compris son fonctionnement là, non ?

Un exemple complet avec le thème "Seven".

Drupal 7 :

name = Seven
description = A simple one-column, tableless, fluid width administration theme.
package = Core
version = VERSION
core = 7.x
stylesheets[screen][] = reset.css
stylesheets[screen][] = style.css
settings[shortcut_module_link] = 1
regions[content] = Content
regions[help] = Help
regions[page_top] = Page top
regions[page_bottom] = Page bottom
regions[sidebar_first] = First sidebar
regions_hidden[] = sidebar_first

Drupal 8 :

name: Seven
type: theme
description: 'A simple one-column, tableless, fluid width administration theme.'
package: Core
version: VERSION
core: 8.x
stylesheets:
  screen:
    - style.css
stylesheets-override:
  - vertical-tabs.css
  - vertical-tabs-rtl.css
  - jquery.ui.theme.css
settings:
  shortcut_module_link: '1'
regions:
  content: Content
  help: Help
  page_top: 'Page top'
  page_bottom: 'Page bottom'
  sidebar_first: 'First sidebar'
regions_hidden:
  - sidebar_first

Votre commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.
Votre adresse servira à afficher un Gravatar et à vous notifier des réponses. Votre commentaire sera anonymisé si ce billet est dépublié pendant plus de 3 mois.
Pour lutter contre le spam notre système enregistre votre adresse IP et votre adresse e-mail si vous la partagez.
Nous vous invitons à consulter notre politique de confidentialité pour comprendre les traitements faits de ces données et comment les rectifier.

À propos de Nicolas

Co-fondateur - Expert technique

Je découvre Drupal en 2007 alors que j'occupe le poste d’Adjoint de Production du département Multimédia au sein du Service d'Information du Gouvernement. Je fus chargé de la réalisation de la nouvelle version, encore en ligne à ce jour, du site du Premier ministre.