1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
|
---
title: Firefox 70 for developers
slug: Mozilla/Firefox/Releases/70
tags:
- '70'
- Firefox
- Mozilla
- Release
translation_of: Mozilla/Firefox/Releases/70
---
<p>{{FirefoxSidebar}}</p>
<p class="summary">Firefox 70 は、米国時間 2019 年 10 月 22 日 にリリースされました。このページでは、開発者に影響する Firefox 70 の変更点をまとめています。</p>
<h2 id="Changes_for_web_developers" name="Changes_for_web_developers">ウェブ開発者向けの変更点一覧</h2>
<h3 id="Developer_Tools" name="Developer_Tools">開発者ツール</h3>
<h4 id="Debugger_updates" name="Debugger_updates">デバッガーの更新</h4>
<ul>
<li><a class="gr-progress" href="/ja/docs/Tools/Debugger">デバッガー</a> で <a href="/ja/docs/Tools/Debugger/Break_on_DOM_mutation">DOM Mutation</a> にブレークポイントを設定できるようになりました。ノードやその属性が変化したときや、ノードが DOM から削除されたときに一時停止できます ({{bug(1576219)}})。</li>
<li>デバッガーで一時停止したときに、ステップ実行や復帰ができるボタンを持つオーバーレイをページ上に表示するようになりました ({{bug(1574646)}})。</li>
<li>デバッガーで、すでにエンジンによって破棄されているソース (たいてい、ページを読み込むときにに 1 回実行するスクリプト) を表示するようになりました。よって次に実行するとき、デバッグするためのブレークポイントを正しく設定できます ({{bug(1572280)}})。</li>
<li>デバッガーの <a href="/ja/docs/Tools/Debugger/Using_the_Debugger_map_scopes_feature">スコープパネル</a> のグループ化を簡単にして、以前表示した追加スコープをトップレベル関数の上に統合しました (例: <code><a href="/ja/docs/Web/JavaScript/Reference/Statements/let">let</a></code>、<code><a href="/ja/docs/Web/JavaScript/Reference/Statements/with">with</a></code>、<a href="/ja/docs/Web/JavaScript/Reference/Statements/if...else"><code>if</code>/<code>else</code></a> で作成されたブロック) ({{bug(1448166)}})。</li>
<li>デバッガーが、ステップ実行中に <a href="/ja/docs/Tools/Debugger/Using_the_Debugger_map_scopes_feature">スコープパネル</a> で現在選択および展開している変数を維持するようになりました ({{bug(1405402)}})。</li>
<li>デバッガーが、非同期関数のステップオーバーを正しく扱うようになりました。<a href="/ja/docs/Web/JavaScript/Reference/Statements/async_function">非同期関数</a> のデバッグが容易になります ({{bug(1570178)}})。</li>
<li><a href="https://support.mozilla.org/kb/containers">コンテナーセッション</a> (異なるログイン状態でテストする際に便利です) でデバッグするとき、デバッガーでソースを正しく表示するようになりました ({{bug(1375036)}})。</li>
<li>デバッガーで <code><a href="/ja/docs/Web/JavaScript/Reference/Statements/debugger">debugger</a></code> 文にブレークポイントを設定して "ここでは停止しない" に切り替えると、<code>debugger</code> 文を無効にできます ({{bug(925269)}})。</li>
<li>WebExtensions の開発者は、ストレージタブの拡張機能ストレージで <code>browser.storage.local</code> を調査できます ({{bug(1585499)}})。</li>
</ul>
<h4 id="Other_updates" name="Other_updates">その他の更新</h4>
<ul>
<li>An icon will be displayed next to inactive CSS properties in the <a href="/ja/docs/Tools/Page_Inspector">インスペクター</a> の <a href="/ja/docs/Tools/Page_Inspector/UI_Tour#Rules_view">ルールビュー</a> で、使用されていない CSS プロパティの隣にアイコンを表示するようになりました。アイコンにマウスポインターを載せると、なぜ使用されていないかの情報を表示します ({{bug(1306054)}})。</li>
<li><a href="/ja/docs/Tools/Page_Inspector/UI_Tour#Rules_view">CSS ルールビュー</a> で前景色の <a href="/ja/docs/Tools/Page_Inspector/How_to/Inspect_and_select_colors">カラーピッカー</a> に、背景色とのコントラストがアクセシビリティの基準に準拠しているかを表示するようになりました ({{bug(1478156)}})。</li>
<li><a href="/ja/docs/Tools/Accessibility_inspector">アクセシビリティインスペクター</a> の <a href="/ja/docs/Tools/Accessibility_inspector#Check_for_accessibility_issues">チェック項目</a> ドロップダウンメニューに、キーボードのアクセシビリティチェックを追加しました ({{bug(1564968)}})。</li>
</ul>
<h3 id="HTML" name="HTML">HTML</h3>
<ul>
<li>以下の状況で、安全に生成されたパスワードを Firefox がユーザーに提案できるようになりました:
<ul>
<li><code>autocomplete="new-password"</code> 属性を設定した {{HTMLelement("input")}} 要素。</li>
<li>新しいパスワードを意図したかにかかわらず、パスワード入力要素でユーザーがコンテキストメニューを開いた。</li>
</ul>
</li>
</ul>
<h3 id="CSS" name="CSS">CSS</h3>
<ul>
<li>{{cssxref("opacity")}} や {{SVGAttr("stop-opacity")}} の、不透明度の値をパーセンテージで指定できるようになりました ({{Bug(1562086)}})。</li>
<li>{{cssxref("grid-auto-columns")}} および {{cssxref("grid-auto-rows")}} が、複数のトラックサイズの値を受け入れるようになりました ({{Bug(1339672)}})。</li>
<li>いくつかのテキスト関連の CSS プロパティを、デフォルトで有効にしました ({{bug(1573631)}}):
<ul>
<li>{{cssxref("text-decoration-thickness")}}。</li>
<li>{{cssxref("text-underline-offset")}}。</li>
<li>{{cssxref("text-decoration-skip-ink")}}。既定値は <code>auto</code> であり、下線や上線が {{Glossary("glyph", "グリフ")}} を横切る場所で途切れるようになりました。</li>
</ul>
</li>
<li>{{cssxref("display")}} プロパティが、内部表示種別と外部表示種別を表す 2 つのキーワードを受け入れるようになりました ({{Bug(1038294)}}、{{Bug(1105868)}}、{{Bug(1557825)}})。</li>
<li>{{cssxref("font-size")}} プロパティが新しいキーワード <code>xxx-large</code> を受け入れるようになりました ({{Bug(1553545)}})。</li>
<li>ロジックとパフォーマンスの都合で、{{cssxref(":visited")}} 疑似クラスが {{htmlelement("link")}} 要素にマッチしないようになりました ({{bug(1572246)}}、理由について詳しくは <a href="https://groups.google.com/forum/#!msg/mozilla.dev.platform/1NP6oJzK6zg/ftAz_TajAAAJ">Intent to ship: Make <link> elements always unvisited</a> および <a href="https://github.com/w3c/csswg-drafts/issues/3817">[selectors] :link and <link></a> をご覧ください)。</li>
<li>{{cssxref("quotes")}} プロパティで値 <code>auto</code> をサポートしました ({{bug(1421938)}})。</li>
<li>パフォーマンスを向上させるため、{{htmlelement("style")}} 要素内のスタイルシートを再使用のためキャッシュするようになりました ({{bug(1480146)}})。現在、<code>@import</code> 規則を持つスタイルシートは含まれませんので注意してください。</li>
<li><code><ratio></code> 型の値として <code><number>/<number></code> や 1 つの <code><number></code> を受け入れるようになりました ({{bug(1565562)}})。</li>
</ul>
<h4 id="Removals" name="Removals">廃止</h4>
<ul>
<li>3 値の <position> のサポートを廃止しました(背景の位置を除く) ({{Bug(1559276)}})。<a href="https://www.fxsitecompat.dev/docs/2019/3-valued-css-position-is-no-longer-supported-except-for-background-position/">互換性情報をご覧ください</a>。</li>
<li>{{cssxref("counter")}} および {{cssxref("counters")}} で値 <code>none</code> が無効になりました。Level 3 仕様を CSS 2.1 に合わせるための変更です {{Bug(1576821)}})。</li>
</ul>
<h3 id="SVG" name="SVG">SVG</h3>
<ul>
<li>切り取り、コピー、貼り付けのイベントを、SVG グラフィック要素へディスパッチするようになりました ({{bug(1569474)}})。</li>
</ul>
<h3 id="MathML" name="MathML">MathML</h3>
<ul>
<li>{{MathMLElement("math")}} 要素の非推奨属性である <code>mode</code> を削除しました ({{bug(1573438)}})。</li>
<li>0 ではない単位なしの長さの値、例えば <code>500%</code> を表す <code>5</code> をサポートしなくなりました。</li>
<li>ドットで終わる長さの値、例えば <code>2.</code> や <code>34.px</code> もサポートしなくなりました。</li>
</ul>
<h3 id="JavaScript" name="JavaScript">JavaScript</h3>
<ul>
<li><a href="/ja/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_separators">Numeric separators</a> をサポートしました ({{Bug(1435818)}})。</li>
<li>{{jsxref("RelativeTimeFormat.formatToParts", "Intl.RelativeTimeFormat.formatToParts()")}} メソッドを実装しました ({{bug(1473229)}})。</li>
<li>ECMAScript 402 Intl API に対応して、{{jsxref("BigInt.prototype.toLocaleString()")}} メソッドが <code>locales</code> および <code>options</code> 引数とともに動作するように更新しました。また、{{jsxref("NumberFormat.format", "Intl.NumberFormat.format()")}} および {{jsxref("NumberFormat.formatToParts", "Intl.NumberFormat.formatToParts()")}} が {{jsxref("BigInt")}} 値を受け入れるようになりました ({{bug(1543677)}})。</li>
<li>最新の ECMAScript 仕様に対応して、先頭のゼロを <a href="/ja/docs/Web/JavaScript/Reference/Lexical_grammar#BigInt_literal">BigInt リテラル</a> で拒否するようになりました。<code>08n</code> や <code>09n</code> は、<code>07n</code> のような古い 8 進数値を使用した場合のエラーと同様に無効です。8 進 <code>BigInt</code> 数値では常に、先頭のゼロと文字 "o" (小文字または大文字) を使用してください (すなわち <code>0755n</code> ではなく <code>0o755n</code>)。{{bug(1568619)}} をご覧ください。</li>
<li>{{jsxref("RelativeTimeFormat", "Intl.RelativeTimeFormat")}} コンストラクターで Unicode 拡張キーの "nu" をサポートしました。また、{{jsxref("RelativeTimeFormat.resolvedOptions", "Intl.RelativeTimeFormat.resolvedOptions()")}} メソッドが <code>numberingSystem</code> も返すようになりました ({{bug(1521819)}})。</li>
</ul>
<h3 id="APIs" name="APIs">API</h3>
<h4 id="DOM" name="DOM">DOM</h4>
<ul>
<li>{{domxref("History.back","back()")}}、{{domxref("History.forward","forward()")}}、{{domxref("History.go","go()")}} メソッドが非同期になりました。ナビゲーションが完了した通知を得るには、<code>{{domxref("Document/defaultView/popstate_event", "popstate")}}</code> イベントにリスナーを追加します({{Bug(1563587)}})。</li>
<li>web workers で {{DOMxRef("DOMMatrix")}}、{{DOMxRef("DOMPoint")}} などをサポートしました ({{bug(1420580)}})。</li>
<li>{{domxref("Document.all")}}、{{domxref("Document.clear")}}、{{domxref("Document.captureEvents")}}、{{domxref("Document.clearEvents")}} を {{domxref("HTMLDocument")}} から {{domxref("Document")}} に移動しました ({{bug(1558570)}}、{{bug(1558571)}})。</li>
<li>クロスオリジン {{htmlelement("iframe")}} の内部から <a href="/ja/docs/Web/API/Notifications_API">通知</a> の許可を要求できないようになりました ({{bug(1560741)}})。</li>
</ul>
<h4 id="WorkersService_workers" name="WorkersService_workers">Workers/Service workers</h4>
<ul>
<li>worker や shared worker のスクリプト、すなわち {{domxref("Worker.Worker()", "Worker()")}} や {{domxref("SharedWorker.SharedWorker()", "SharedWorker()")}} コンストラクターの対象で、厳格な MIME タイプの確認を強制するようになりました ({{bug(1523706)}})。</li>
</ul>
<h4 id="Media_Web_Audio_and_WebRTC" name="Media_Web_Audio_and_WebRTC">メディア、Web Audio、WebRTC</h4>
<ul>
<li>{{domxref("RTCPeerConnection.restartIce()")}} メソッドを追加しました。これは新しい "perfect negotiation" の仕組みを実装するために必要な、4 つの変更点のひとつです。残りは将来の Firefox の更新で実現する予定です ({{bug(1551316)}})。</li>
<li>{{domxref("RTCPeerConnection.setRemoteDescription()")}} メソッドを引数なしで呼び出せるようになりました。これはもうひとつの "perfect negotiation" に関する更新です ({{bug(1568292)}})。</li>
<li>{{domxref("MediaTrackSupportedConstraints.groupId")}} をサポートしました。また、{{domxref("MediaTrackConstraints.groupId")}} プロパティをサポートしましたので <code>true</code> を返すようになりました ({{bug(1561254)}})。</li>
<li>新たな Web Audio API 機能をいくつか実装および更新しました:
<ul>
<li>{{domxref("AudioContext.getOutputTimestamp()")}} を実装しました ({{bug(1324545)}})。</li>
<li>{{domxref("AudioContext.baseLatency")}} および {{domxref("AudioContext.outputLatency")}} を実装しました ({{bug(1324552)}})。</li>
<li>{{domxref("MediaElementAudioSourceNode.mediaElement")}} および {{domxref("MediaStreamAudioSourceNode.mediaStream")}} を実装しました ({{bug(1350973)}})。</li>
<li>{{domxref("ChannelMergerNode.ChannelMergerNode()", "ChannelMergerNode()")}} コンストラクターで、<code>channelCount</code> や <code>channelCountMode</code> に無効な値を設定しようとした場合にエラーが発生するようになりました ({{bug(1456263)}})。</li>
</ul>
</li>
</ul>
<h4 id="Canvas_and_WebGL" name="Canvas_and_WebGL">Canvas と WebGL</h4>
<ul>
<li>{{domxref("CanvasRenderingContext2D.getTransform()")}} と、引数として行列の個々の要素を表す複数のパラメータに代わり matrix オブジェクトを受け入れる {{domxref("CanvasRenderingContext2D.setTransform()")}} の新しい派生形をサポートしました ({{bug(928150)}})。</li>
</ul>
<h3 id="HTTP" name="HTTP">HTTP</h3>
<ul>
<li><a href="/ja/docs/Mozilla/Firefox/Privacy/Tracking_Protection">強化型トラッキング防止機能</a> が有効であるときの、サードパーティーのトラッキングリソースに対する既定のリファラーのポリシーが <code>strict-origin-when-cross-origin</code> になりました ({{bug(1569996)}})。</li>
<li>{{httpheader("Referer")}} 要求ヘッダーのサイズが 4 KB (4,096 バイト) に制限されました。過大なリファラーが制限を超えた場合は、オリジンの部分のみ送信します ({{bug(1557346)}})。</li>
<li><a href="/ja/docs/Web/HTTP/Caching">HTTP キャッシュ</a> が、トップレベルドキュメントのオリジンごとに分割されました ({{bug(1536058)}})。</li>
</ul>
<h4 id="Removals_2" name="Removals_2">廃止</h4>
<ul>
<li>{{HTTPHeader("X-Frame-Options")}} の <code>allow-from <em>uri</em></code> ディレクティブを削除しました。代わりに、{{CSP("frame-ancestors")}} ディレクティブを付加した {{HTTPHeader("Content-Security-Policy")}} ヘッダーを使用してください ({{bug(1301529)}})。</li>
</ul>
<h3 id="WebDriver_conformance_Marionette" name="WebDriver_conformance_Marionette">WebDriver conformance (Marionette)</h3>
<ul>
<li><code>WebDriver:TakeScreenshot</code> コマンドを、<a href="https://wiki.mozilla.org/Project_Fission">Fission</a> 互換に更新しました。<a href="/ja/docs/Web/Security/Same-origin_policy">クロスオリジン</a> iframe 由来のコンテンツが、ページのスクリーンショットに含まれるようになります。あるいは chrome スコープから呼び出したとき、ブラウザーウィンドウの内部に、アクティブなタブの内容が見えるようになります ({{bug(1559592)}})。</li>
<li><code>WebDriver:TakeScreenshot</code> が、ハイライトに使用する DOM 要素のリストを受け入れないようになりました ({{bug(1575511)}})。</li>
<li><code>WebDriver:ExecuteScript</code> および <code>WebDriver:ExecuteAsyncScript</code> が、<code>window.onunload</code> をウェブに公開される方法で設定しないようになりました ({{bug(1568991)}})。</li>
</ul>
<h2 id="Changes_for_add-on_developers" name="Changes_for_add-on_developers">アドオン開発者向けの変更点</h2>
<h3 id="API_changes" name="API_changes">API の変更点</h3>
<ul>
<li><code><a href="/ja/docs/Mozilla/Add-ons/WebExtensions/API/topSites/get">topSites.get()</a></code> メソッドに、ユーザーが新しいタブを開いたときに表示するページの一覧を返すようにするための新しい引数を追加しました ({{bug(1568617)}})。</li>
<li><code><a href="/ja/docs/Mozilla/Add-ons/WebExtensions/API/privacy/network">privacy.network</a></code> プロパティの <code>WebRTCIPHandlingPolicy</code> サブプロパティで許可される値を、Chrome で見られる動作に合うよう修正しました ({{bug(1452713)}}):
<ul>
<li>以前はプロキシが設定されていない場合に、<code>disable_non_proxied_udp</code> が WebRTC の使用を妨げていました。現在は、プロキシが設定されている場合は常にプロキシを使います。設定されていない場合は、プロキシを経由しない接続を許可するようになりました。</li>
<li><code>proxy_only</code> を、古い動作を提供するために使用できるようになりました。これは、プロキシを使用した TURN on TCP による ICE ネゴシエーションのみ許可する効果があります。これ以外の接続は許可されません。</li>
</ul>
</li>
</ul>
<h3 id="Manifest_changes" name="Manifest_changes">マニフェストの変更点</h3>
<h4 id="Removals_3" name="Removals_3">廃止</h4>
<ul>
<li>chromium ベースのブラウザーで使用するテーマキーの別名として提供された、以下の <a href="/ja/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme">theme</a> キープロパティを削除しました:
<ul>
<li><code>images</code> プロパティの <code>headerURL</code>。今後は <code>theme_frame</code> を使用してください。</li>
<li><code>colors</code> プロパティ:
<ul>
<li><code>accentcolor</code>。今後は <code>frame</code> を使用してください。</li>
<li><code>textcolor</code>。今後は <code>tab_background_text</code> を使用してください。</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2 id="See_also" name="See_also">関連情報</h2>
<ul>
<li>Hacks ブログのリリース記事: <a href="https://hacks.mozilla.org/2019/10/firefox-70-a-bountiful-release-for-all/">Firefox 70 — a bountiful release for all</a></li>
<li><a href="https://www.fxsitecompat.com/versions/70/">Firefox 70 サイト互換性情報</a></li>
</ul>
<h2 id="Older_versions" name="Older_versions">過去のバージョン</h2>
<p>{{Firefox_for_developers(69)}}</p>
|