php / php/php-src

[GLD Serializer Benchmark] PHP json 8.3.19 — spec compliance misses

オープン
#23,687 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
C
スター
40.4k
フォーク
8.1k
平均マージ
2日 13時間
マージ済み PR(30日)
96

説明

Hi — this is a friendly report from the GLD Serializer Benchmark, an independent multi-language suite that times serializers and checks them against the published format specs (RFC 8259, YAML 1.2, …).

We measured json 8.3.19 on PHP. The suite recorded spec-profile misses for this pin. The catalog is report-only: a miss is not a CI failure, and some cases are older or stricter profiles (for example RFC 4627 vs RFC 8259) rather than a crash.

Compliance results (please start here)

This link opens the live heatmap on PHP with json already selected (All standards). Click a scored cell for each FAIL and the cited spec paragraph:

https://leo-gan.github.io/GLD.SerializerBenchmark/dashboard/#compliance/php/json

How the catalog is built, and how to read a FAIL line:

I am not pasting the case list here so you can use the Dashboard (filters, heatmap, and spec links) rather than a static dump.

Optional: one standard family only — #compliance/php/json/json (or yaml, cbor, …).

Benchmark timings (same pin)

The same suite also publishes encode / decode time and payload size for this library on PHP:

https://leo-gan.github.io/GLD.SerializerBenchmark/dashboard/?lang=php&data=document@n=1&mode=bytes#dashboard

Details table (this library pre-selected):

https://leo-gan.github.io/GLD.SerializerBenchmark/dashboard/?lang=php&ser=json&data=document@n=1&mode=bytes#detailed-analytics

That page is the live L1 snapshot, not a claim that one library is “best.”

Ask

Please look at the Compliance view for json. If a miss is a real decoder/encoder bug you want to fix, great. If it is an intentional default (accepting NaN, YAML 1.1 bools, …), a short note here is enough — we will keep the catalog as-is unless the library’s documented contract changes.

Thanks for the library.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

PHP json の GLD Serializer Benchmark コンプライアンスダッシュボードから始め、次にスコアリングされた各 FAIL を開いて、引用されている仕様の段落を読みます。報告された encoder または decoder の動作を再現し、それぞれの不一致が実際のバグなのか、意図的に文書化されたデフォルトなのかを判断します。問題が適切なカバレッジを伴って修正されるか、意図的なものとして明確に文書化されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
c, php
領域
backend
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
活発
明瞭さ
説明が足りない
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。