Safari テクノロジー プレビュー 248 のリリース

2026/07/23 6:00

Safari テクノロジー プレビュー 248 のリリース

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Safari Technology Preview リリース 248 が、macOS Golden Gate および macOS Tahoe 向けに公開されており、システム設定 → 一般 → ソフトウェアアップデートから直接更新可能です。本リリースでは、リビジョン 315567@main と 316817@main の間に含まれる WebKit の変更を取り入れており、大幅なパフォーマンス向上と共に重要なアクセシビリティおよび機能強化を達成しました。

主な新機能には、TC39 プロポーザルに基づく JavaScript BigInt Math 機能(

BigInt.pow
および
BigInt.sqrt
)の追加、ES2022 クラスプライベートフィールド/メソッド/アクセッサに対する Web Inspector のサポート拡大が含まれます。アクセシビリティについては、VoiceOver ナビゲーションを大幅に改善し、特に disclosure widgets(hidden="until-found")および古くなった aria-labelledby 値に関する問題を解消しました。メディア再生面では、旋回したコントロールの不具合、iPhone での字幕表示欠落、ストリーム失敗、デバイス方向のバグに対する修正により安定性が向上しています。

ストレージおよび Web API の安定性も改善されました:IndexedDB トランザクションは現在停止されたバックグラウンドトランザクションによってブロックされなくなり、Async Clipboard API の非同期リクエストおよび FileReader の charset 処理が正しく動作するようになりました。セキュリティの回帰問題である Content Security Policy エラーおよび同一ページ内ナビゲーションチェックに関する不具合も解決済みです。また、Digital Credentials エラーコードおよび AbortError の処理に対する修正も含まれています。さらに、開発者は Digital Credentials API を利用し、Web Inspector 文脈内でウォレットペイロードのシミュレーションを行うことができます。

本文

Safari Technology Preview リリース 248 の概要

Safari Technology Preview リリース 248 が、macOS Golden Gate および macOS Tahoe でダウンロード可能です。すでにインストールされている場合は、システム設定の「一般」→「ソフトウェア更新」からアップデートを行ってください。本リリースには、コミット 315567@main から 316817@main の間に実施された WebKit への以下の変更が盛り込まれています。


アクセシビリティ

解決済みの問題点

  • hidden="until-found"
    属性で隠されたコンテンツを開示小ウィジェットによって表示した際に、VoiceOver がそのコンテンツへナビゲートできない問題を修正しました。
  • 参照されている要素の aria-label が動的に変更された際に、
    aria-labelledby
    の情報が陳腐化していた問題を修正しました。

CSS

新機能

  • 類似した色空間間の補間処理において、欠落した色成分を転送する機能を追加しました。
  • CSS の
    progress()
    関数に対し、
    no-clamp
    オプションをサポートするよう対応しました。

解決済みの問題点

  • 様々な CSS アットルール(at-rules)のシリアライズ処理において、識別子をエスケープしない誤動作を修正しました。
  • スタイル解決の外側にあるパースラの状態に依存して不正にゲートされていた
    :last-child
    関連のセレクターの問題を修正しました。
  • <iframe>
    の color-scheme を変更した際に、埋め込まれたドキュメントの外観が無効化されないよう修正しました。
  • CSS スクロールスナップのリサンプリングにおいて、他の整列されたスナップターゲットよりもフラグメントターゲット(
    :target
    )のスナップ領域を優先するように修正しました。
  • @layer
    ステートメントに続く
    @import
    ルールのプリロードが失敗していた問題を修正しました。
  • CSSViewTransitionRule
    のシリアライズ処理を修正しました。
  • MediaList.deleteMedium()
    を修正し、引数をメディアクエリとしてパースして、一致するすべてのクエリを削除するように対応しました。
  • MediaList.appendMedium()
    を修正し、引数を単一のメディアクエリとしてパースし、重複を防ぐように対応しました。
  • ストラッキングや fit-content の好ましいサイズを有するグリッドアイテムにおいて、トラックのサイズ計算時に正しくない最小コンテンツ寄与値を算出していた問題を修正しました。
  • ビュー遷移がアクティブな間に CSS ルールを挿入すると、グループ化されたアニメーションが最終状態へジャンプしてしまい、不自然に振る舞う問題を修正しました。
  • CSS の
    var()
    関数が、第一引数に確定できない値として解決した際にのみフォールバックを計算するように修正しました。
  • レンダリングブロックされたドキュメントから最初のレンダリング機会が出る前に離脱すると、誤って
    pagereveal
    が発火し、アウトバウンドのクロスドキュメントビュー遷移が開始されてしまう問題を修正しました。

編集

解決済みの問題点

  • CSS 変換を適用した DOM エレメントのドラッグイメージが正しくレンダリングされない問題を修正しました。
  • iOS で辞書による入力から発生する不透明な DOM ミュテーションの問題を修正しました。
  • 編集可能なテーブル内で削除操作を行った際に、空の末尾のテーブル行が残ってしまう問題を修正しました。
  • 編集可能なコンテンツ内の縦方向カーソルの移動において、要求された editable-type パラメータが無視されていた問題を修正しました。

フォーム

解決済みの問題点

  • 水平配置のテキストフォームコントロールにおいて、同心円の内部ボタンの隅丸み処理で下部インセットが無視されていた問題を修正しました。

イメージ

解決済みの問題点

  • RGB ゲインマップ画像がチャンネルあたり 8 ビットにデコードされるという回退現象を修正し、これにより色シフトや不適切な明るさが引き起こされていた問題を解消しました。
  • HDR 画像のデコードにおいてゲインマップターゲットピクセルフォーマットを処理する際、フォーマットの解析に失敗した場合でも安全にフォールバックするように修正しました。

JavaScript

新機能

  • TC39 BigInt 数学案に対応し、BigInt に対して
    Math.pow
    Math.sqrt
    に相当するメソッドを公開しました(例:
    BigInt.pow
    BigInt.sqrt
    )。

メディア

解決済みの問題点

  • CSS 変換によって回転された場合、
    <audio>
    および
    <video>
    コントロール
    のレンダリングが正しく行われない問題を修正しました。
  • iPhone のフルスクリーンビデオ表示時に、字幕またはクローズドキャプションが表示されない問題を修正しました。
  • ArrayBuffer-backed
    YUV VideoFrame で visibleRect を設定した際に、オフセットされたクロマチャンネルでレンダリングされるという不具合を修正しました。
  • 監視カメラなど特定のソースからのストリームの再生が機能しない問題を修正しました。
  • 一時的なデバイス回転によって取得されたビデオフレームの向きが誤っている問題を修正しました。
  • Media Source Extensions の再生およびシーク機能において、バッファ化範囲間の隙間許容値を緩和することで機能を改善しました。

ナビゲーション

解決済みの問題点

  • フラグメント識別子のみが異なる URL への
    <meta http-equiv="refresh">
    が、ページリロードとして誤って処理されていた問題を修正しました。

ネットワーク

解決済みの問題点

  • パーセント符号化されたアルメニア語のパースセグメントの後に、URL のパス区切り文字が
    %2F
    にエンコードされてしまう問題を修正しました。

レンダリング

解決済みの問題点

  • <body>
    の背景色の変更時に、コンポジティングされた
    <html>
    要素の背景色が再描画されない問題を修正しました。
  • overflow: auto
    を指定した Flex カラムコンテナにおけるブロック軸パディングが ScrollHeight に含まれないという回退現象を修正しました。
  • 準積分値の固有幅を持つ SVG を埋め込んだ
    <img>
    が、予想より 1 ドット狭くレンダリングされる不具合を修正しました。
  • 子要素のリサイズ時に
    filter: drop-shadow()
    を適用している要素が完全に再描画されない問題を修正しました。

SVG

解決済みの問題点

  • SVG SMIL ラインクアニメーションにおいて、リードスペースを含む無効な
    to
    from
    by
    値を拒否するように修正しました。
  • 複合スクリプトを含むユニコードテキストが、曲線の
    <textPath>
    上に正しくレンダリングされない問題を修正しました。
  • SVGLength.convertToSpecifiedUnits()
    が px から %、em、ex への変換時に失敗する不具合を修正しました。
  • <g>
    など、それらに適用が許可されていない要素に対し、cx、cy、r、rx、ry、x、y、width、height といった SVG 幾何学的表示属性が誤って適用される問題を修正しました。
  • <textPath>
    に対する文字ごとの rotate 属性が無視されていた問題を修正し、現在はパスの接線角度と合成するように対応しました。
  • いくつかの SVG スタイリング仕様に準拠していない問題を修正しました。
  • <marker>
    orient
    および
    markerUnits
    の動的な変更に対して、それを参照する要素の再描画が行われない問題を修正しました。
  • SVG SMIL の数値、整数オプション付き整数、数値オプション付き数値、およびパスアニメーションにおいて、パースに失敗した
    from
    to
    、または
    by
    値が適用されないように修正しました。

スクロール

解決済みの問題点

  • サイズゼロの要素内部にある CSS スクロールスナップポイントが正しく動作しない問題を修正しました。
  • CSS スクロールスナップのリサンプリングにおいて、フォーカスされた要素またはフラグメントターゲットを含まれるスナップ領域を優先するように修正しました。

セキュリティ

解決済みの問題点

  • 一部のウェブサイトの表示が失敗し、コンソールにコンテンツセキュリティポリシー(CSP)のエラーログが表示されるという回退現象を修正しました。
  • 同じページ内でのナビゲーションに対し、コンテンツセキュリティポリシー を誤って適用チェックしていた問題を修正しました。
  • 報告専用ポリシーにおける CSP の
    frame-ancestors
    バイオレーションが無視され、報告されないという問題を修正し、正しく報告されるように対応しました。
  • CSP のパース処理において、nonce-source および hash-source 値のクォートの後に余計な文字がある場合を拒否するように修正しました。
  • CSP の trusted-types 表現において、キーワードおよびワイルドカードの後に余計な文字がある場合を拒否するように修正しました。

ストレージ

解決済みの問題点

  • 他のページのトランザクションがバックグラウンドでサスペンドされている状態で、別の IndexedDB トランザクションを開始しようとした際、長期間ブロックされる不具合を修正しました。

Web API

解決済みの問題点

  • 非同期クリップボード API を修正し、ペーストへのアクセス要求を非同期で行うように対応しました。
  • デジタルクレデンシャルにおいて、プラットフォームによるキャンセルや不明なエラーに対し
    OperationError
    を表面化するように修正し、以前は
    AbortError
    UnknownError
    を返していた問題を改善しました。
  • デジタルクレデンシャルの破棄処理で誤ったエラーコードを同期して返していた問題を修正し、現在は正しいエラーコードを持つタスクとしてキューイングされるように対応しました。
  • KeyboardEvent.getModifierState("AltGraph")
    および
    MouseEvent.getModifierState("AltGraph")
    が常に false を返していた問題を修正しました。
  • デジタルクレデンシャルに対して
    Credential.type
    が "digital-credential" ではなく "digital" を返さないよう修正しました。
  • navigator.credentials.get()
    の破棄処理時、デジタルクレデンシャルドキュメントピッカーが画面上で固まってしまう問題を修正しました。
  • FileReader.readAsText()
    が Blob の MIME タイプの charset パラメータを無視する問題を修正しました。

Web インスペクター

解決済みの問題点

  • コンソールでオブジェクトインスタンスを検査する際、ES2022 クラスのプライベートフィールド、メソッド、アクセサーを表示しない問題を修正しました。
  • デバッガー内のシンボリックブレイクポイントを修正し、intrinsic 関数と動作するようになりました。
  • セミコロンのみを含む行上の JavaScript ブレイクポイントがトリガーされない不具合を修正しました。
  • コンソール REPL を修正し、
    let
    および
    const
    で宣言された変数の再定義が可能になりました。
  • タイムラインにおいて
    performance.mark()
    レコードの誤ったタイムスタンプをエクスポートまたはインポートする問題を修正しました。
  • ローカルレスポンスオーバライドがファイルにマッピングされている際、実際のエンコーディングではなく Latin-1 (ISO-8859-1) と解釈される問題を修正しました。
  • メディアロギング設定がページ読み込みを超えて保持されない不具合を修正しました。
  • シンボリックブレイクポイントを修正し、Array、Date、EventTarget、Worker などのネイティブコンストラクタと動作するようになりました。
  • モジュールをインポートする際のエラーにスタックトレースが表示されない問題を修正しました。
  • クロスオリジンの iframe 内のノードに対してアクセシビリティサイドバーが空になってしまう不具合を修正しました。
  • クロスオリジンの iframe 内でのインラインスタイルの無効化処理において、各ノードあたり 1 つのコマンドを発行するのではなく、ティック単位で DOM.getAttributes コマンドをバッチ処理するように修正しました。
  • クロスオリジンの iframe 内での DOM ストレージ読み書きコマンド が、フレーム自身のオリジンに対して解決されるように修正しました。
  • Web インスペクターを閉じて再オープンした際に、移動されたブレイクポイントが元の位置に戻ってしまう不具合を修正しました。
  • Map.prototype などのプロトタイプオブジェクトに対して形式化されたパラメータ文字列を表示しない問題を修正しました。
  • オブジェクト簡略化メソッドおよび矢印関数に対する形式化されたパラメータ文字列が欠落している問題を修正しました。
  • クラスでない関数のプロパティの前面に不要なコロンが表示される不具合を修正しました。
  • フレックスオーバーレイでクロス軸方向が誤って計算されていた三項演算式による自己キャンセルの不具合を修正しました。
  • 色ピッカーで選択した色が強制的に Display P3 に変換されてしまう問題を修正しました。
  • Page.searchInResources
    がキャッシュ由来のリソースを検索結果から沈黙して省略する不具合を修正しました。
  • スタイルサイドバーで無効な CSS 宣言が重複して正しく「アクティブ」と表示されていない問題を修正しました。
  • クロスオリジンの iframe で採用された構築可能スタイルシートが、ユーザーエージェントスタイルシートとして誤分類される問題を修正しました。
  • DOM エージェントが過剰にパワー効率の良い再生を報告する原因となる符号なし整数のアンダーフローを修正しました。
  • Network.setExtraHTTPHeaders
    を修正し、以前設定されたヘッダーを置換して、累積されるのを防ぐように対応しました。

WebDriver

新機能

  • Digital Credentials API への WebDriver 対応を追加し、ウォレットペイロードのシミュレーション、不定待機、ユーザーによる拒否を模擬するコマンドを提供しています。

WebRTC

解決済みの問題点

  • マイクキャプチャーがライブの間、WebProcess AudioSession がアクティブに保たれるように修正しました。
  • メディアストリームトラックがミュートされている間にソース側の変更が発生した場合、configurationchange イベントがドロップされてしまう不具合を修正し、現在はアンミュートされるまでイベントを保留するように対応しました。

同じ日のほかのニュース

一覧に戻る →

2026/07/23 2:30

ターレンス・オのチャートプとの対話:ヤコビアン仮定に対する反例について

## Japanese Translation: 该平台主要通过安全的登录提供个性化体验。经过身份验证后,用户将获得量身定制的响应而非通用回答,并可访问由其保存的聊天历史所告知的答案。关键功能包括直接在界面中创建自定义图像,以及上传外部文件以实现与工作流的无缝集成。通过将创意工具与基于记忆的个性化相结合,该平台将标准效用转化为自适应环境,从而简化任务,并在无需重复设置的情况下利用之前的互动。

2026/07/23 2:20

GigaToken:言語モデルのトークナイゼーション速度が約1,000倍高速化

## Japanese Translation: Gigatoken は、HuggingFace および tiktoken などの標準的なトークナイザーの超高速で即座に置き換え可能なものとして機能し、ネイティブ API を通じてデータ処理を革命化します。これは、マルチスレッド Rust プログラミング、SIMD 最適化、キャッシュ階層の改良、分岐の最小化といった高度なエンジニアリング技術によって達成された画期的成果です。ベンチマーク結果では、EPYC 9565 などの高エンド AMD プロセッサ上において、HuggingFace のトークナイザーよりもほぼ 989 倍、tiktoken よりも 681 倍以上の高速化が確認されています。 本ソフトウェアは、Llama 3/4、Qwen、Gemma、Phi-4、DeepSeek、GLM、Nemotron、Kimi K2、Mistral、CodeLlama などの主要な AI モデルをサポートします。スタンドアローン API(最も高速)および HuggingFace または Tiktoken を既存のワークフローで使用するための互換モード(わずかに低速)を備えています。本ツールは現在、Linux ベースのシステム上で AMD EPYC、Apple M シリーズ、または AMD Ryzen チップを使用する際に最適化されたバイト対ペア符号化を用いて最も効果的に動作し、Windows でのサポートは限られています。ユーザーには WSL の使用を推奨します。 今後の計画としては、Python インテグレーションの改良(現在は ABI3 を使用しており、これは内部 API よりもわずかに低速)およびさらなる最適化によるハードウェア互換性の拡大が含まれます。現在知られている制限事項には、API におけるファイルシンクの欠如と SentencePiece 最適化の制限があります。最終的に、Gigatoken は精度を損なうことなく、モデルトレーニングと推論を大幅に高速化するトークナイゼーション時間を劇的に削減することを約束します。研究用途については、@software{roed2026gigatoken...} として引用されるべきです。

2026/07/23 6:15

Malleable コンピューティング、Emacs、そしてあなた

## Japanese Translation: 著者は、大量導入向けのスケーラビリティよりも速度と簡潔さを優先する軽量のツール `fj` を使用し、Emacs 内で GitHub の Issue 管理を自動化することに成功した。このソリューションは複雑なローカルサーバーを避けるために既存の `gh` コマンドラインユーティリティを利用して認証を行い、UI 操作には Elisp パッケージ `Transient`、フォーマット変換には `ox-gfm` を統合することで、ユーザーがエディタから直接 Issue のメタデータをコピーし、Org モードでコメントを作成し、ブラウザウィンドウを開くことを可能にしている。これらすべての機能は JSON 解析ロジックで約 20 行以内で実装されている。「可変計算(malleable computing)」の原則に従い、Emacs を再起動することなしに迅速なプロトタイピングを可能にしている。2 時間半という初期開発フェーズとコードのリファクタリングを経て、最終製品は個人の利用に最適化された約 400 行の Lisp から構成されている。このアプローチは、伝統的な大衆向けソフトウェア("N")とは対照的に、最小限の計画で堅牢なツールを個人ニーズのために構築することは非常に実現可能であることを示している("1")。 ## Summary: 著者は、大量導入向けのスケーラビリティよりも速度と簡潔さを優先する軽量のツール `fj` を使用し、Emacs 内で GitHub の Issue 管理を自動化することに成功した。このソリューションは複雑なローカルサーバーを避けるために既存の `gh` コマンドラインユーティリティを利用して認証を行い、UI 操作には Elisp パッケージ `Transient`、フォーマット変換には `ox-gfm` を統合することで、ユーザーがエディタから直接 Issue のメタデータをコピーし、Org モードでコメントを作成し、ブラウザウィンドウを開くことを可能にしている。これらすべての機能は JSON 解析ロジックで約 20 行以内で実装されている。「可変計算(malleable computing)」の原則に従い、Emacs を再起動することなしに迅速なプロトタイピングを可能にしている。2 時間半という初期開発フェーズとコードのリファクタリングを経て、最終製品は個人の利用に最適化された約 400 行の Lisp から構成されている。このアプローチは、伝統的な大衆向けソフトウェア("N")とは対照的に、最小限の計画で堅牢なツールを個人ニーズのために構築することは非常に実現可能であることを示している("1")。