Firefox 21 pour les développeurs

Firefox 21 est sorti le 14 mai 2013. Cette page résume les principaux changements dans Firefox 21 qui sont utiles aux développeurs, que vous soyez développeur web, développeur Firefox et Gecko, ou développeur d'add-ons.

Changement pour les développeurs Web

HTML

  • L'attribut scoped a été ajouté à l'élément <style>. Il permet d'inclure des styles qui sont isolés du reste du document. Ces styles peuvent être sélectionnés par le pseudo élément CSS :scope ajouté dans Firefox 20. (bug Firefox 508725).
  • Le nouvel élément HTML <main> a été implémenté (bug Firefox 820508).

JavaScript

  • E4X, une ancienne extension JavaScript, a été retirée. Implementée seulement par Gecko, elle n'a jamais reçu suffisament de soutien (bug Firefox 788293).
  • parseInt ne traite plus les chaînes de caractères commençant par "0" comme un octal (bug Firefox 786135).

CSS

  • La valeur none pour -moz-user-select a maintenant le même comportement que la valeur -moz-none, alignant Gecko sur WebKit (Chrome, Safari), Presto (Opera) et Trident (Internet Explorer) (bug Firefox 816298).
  • Dans des contenus XHTML, la valeur auto de -moz-hyphens appliquait incorrectement des règles de césure quand le langage n'était pas explicitement défini. Cela a été corrigé par (bug Firefox 702121).
  • Une valeur auto a été ajoutée pour la propriété CSS -moz-orient. La valeur auto est équivalente à horizontal quand appliquée à <meter> et <progress> (bug Firefox 835883).

DOM

SVG

Networking

  • Nous continuons à faire évoluer notre implémentation de CSP pour qu'elle corresponde à la spécification CSP 1.0, qui vient d'atteindre la statut de Candidate Recommendation :

    • Le support de l'entête HTTP Content-Security-Policy conformément à la spécification (en plus de l'entête expérimental X-Content-Security-Policy) a été ajouté (bug Firefox 783049). Note : le patch pour ce nouvel entête est arrivé dans Firefox 21, mais il a été désactivé dans les compilations (bug Firefox 842657).

Worker

Changement pour les add-ons et les développeurs Mozilla

  • Les applications FUEL ne peuvent plus utiliser le service Livemarks (bug Firefox 834492). Le service Livemarks est déprécié et mis en retrait en faveur de l'interface async.

  • resource:///modules/ et resource://gre/modules/ ne sont plus identiques (bug Firefox 755724). Ce changement a eu lieu à cause du travail pour la version metro de Firefox. Si vous chargez des modules en utilisant resource:///modules/, vous devriez vérifier si vous ne préférez pas utiliser resource://gre/modules/ à la place. Notez que certains modules ont migrés de Firefox à Toolkit (bug Firefox 840287 et bug Firefox 811548 ont déplacé respectivement NewTabUtils.jsm et les modules thumbnail).

  • Le SDK Add-on est maintenant inclus dans Firefox (bug Firefox 731779)

  • L'API History a vu plusieurs API dépréciées, retirées :

    • Remplacées par mozIAsyncFavicons :

      • nsIFaviconService::setFaviconUrlForPage
      • nsIFaviconService::setFaviconData
      • nsIFaviconService::getFaviconData
      • nsIFaviconService::getFaviconForPage
      • nsIFaviconService::setAndLoadFaviconForPage
      • nsIFaviconService::getFaviconImageForPage
      • nsIFaviconService::getFaviconDataAsDataURL
    • Remplacées par mozIAsyncLivemarks :

      • nsILivemarkService::*
      • PlacesUtils.itemIsLivemark
      • PlacesUtils.nodeIsLivemarkContainer
      • PlacesUtils.nodeIsLivemarkItem
    • Retire seulement le 3e arguments :

      • PlacesUIUtils.showBookmarkDialog
    • Plus implementé par Places, utilisez mozIAsyncHistory à la place :

      • nsIGlobalHistory2::addURI
      • nsIGlobalHistory2::isVisited
      • nsIGlobalHistory2::setPageTitle
    • Plus nécessaire, utilisez onDeleteURI ou onItemRemoved:

      • nsINavHistoryObserver::OnBeforeDeleteURI
      • nsINavBookmarkObserver::OnBeforeItemRemoved
    • Jamais implementé correctement :

      • nsINavHistoryFullVisitResultNode
    • Déprécié, utilisez mozIAsyncHistory::updatePlaces à la place :

      • nsINavHistoryService::AddVisit
  • nsIHttpChannel.redirectTo a été ajouté pour permettre de rediriger les canaux HTTP sans faire des bidouilles fragiles.

Voir aussi

Anciennes versions