Escaped quotes, e.g in formatters, break export
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 45/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- javascript, node.js
- 領域
- backend
調査の方向性
2つのJSON例でエクスポートを再現し、その後、157行目のsetAsConfig付近にあるexport.jsの設定評価パスと、スタックトレースに示されているtriggerExportの呼び出しを調査してください。エスケープされた二重引用符を含むlabelFormatterコードが、報告された構文エラーなしで正常にエクスポートされれば、修正は完了です。
索引モデルが issue の本文から書いたものです。
説明
Export server version: v5.0.0
Highcharts version: 10.2.1
The only difference between these examples is in used quotes in labelFormatter. Only the first one works with export server.
{
"infile": {
"exporting": {
"enabled": true
},
"xAxis": {
"type": "datetime"
},
"legend": {
"labelFormatter": "function () { if (typeof this.chart.series[0] !== 'undefined') { return this.chart.series[0].name; } return 'Somethign else';}"
},
"series": [
{
"name": "Temperature",
"data": [
{
"x": 1743214500000,
"y": 1
}
]
}
]
}
}
{
"infile": {
"exporting": {
"enabled": true
},
"xAxis": {
"type": "datetime"
},
"legend": {
"labelFormatter": "function () { if (typeof this.chart.series[0] !== \"undefined\") { return this.chart.series[0].name; } return 'Somethign else';}"
},
"series": [
{
"name": "Temperature",
"data": [
{
"x": 1743214500000,
"y": 1
}
]
}
]
}
}
Export server logs and received response from export server for the second example:
{
"statusCode": 400,
"message": "[pool] In pool.postWork: For request with ID 935e61e6ae0f4356a2a2264867c6f423 - Error encountered during export: 8.110875ms."
}
2025-04-05 13:29:27 Sat Apr 05 2025 11:29:27 GMT+0000 [error] - [pool] In pool.postWork: For request with ID 935e61e6ae0f4356a2a2264867c6f423 - Error encountered during export: 8.110875ms.
2025-04-05 13:29:27 SyntaxError: Invalid or unexpected token
2025-04-05 13:29:27 new Function (<anonymous>)
2025-04-05 13:29:27 at triggerExport (evaluate at setAsConfig (file:///home/pptruser/node_modules/highcharts-export-server/lib/export.js:157:15), <anonymous>:63:6)
2025-04-05 13:29:27 at #evaluate (file:///home/pptruser/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/ExecutionContext.js:383:19)
2025-04-05 13:29:27 at async ExecutionContext.evaluate (file:///home/pptruser/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/ExecutionContext.js:270:16)
2025-04-05 13:29:27 at async IsolatedWorld.evaluate (file:///home/pptruser/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/IsolatedWorld.js:96:16)
2025-04-05 13:29:27 at async CdpFrame.evaluate (file:///home/pptruser/node_modules/puppeteer-core/lib/esm/puppeteer/api/Frame.js:335:20)
2025-04-05 13:29:27 at async CdpPage.evaluate (file:///home/pptruser/node_modules/puppeteer-core/lib/esm/puppeteer/api/Page.js:799:20)
2025-04-05 13:29:27 at async default (file:///home/pptruser/node_modules/highcharts-export-server/lib/export.js:208:9)
2025-04-05 13:29:27 at async postWork (file:///home/pptruser/node_modules/highcharts-export-server/lib/pool.js:328:20)
2025-04-05 13:29:27 at async doExport (file:///home/pptruser/node_modules/highcharts-export-server/lib/chart.js:438:20)
2025-04-05 13:29:27 at async exportHandler (file:///home/pptruser/node_modules/highcharts-export-server/lib/server/routes/export.js:225:5)
- 主要言語
- JavaScript
- スター
- 368
- フォーク
- 265
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートなし
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
highcharts/node-export-server のほかの issue
-
Update Puppeteer to version 25.11.0+ to allow ARM64 linux images to run node-export-server対応中かも @daniatic が 4 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
highcharts/node-export-server#686 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
highcharts/node-export-server#680 · コメント 1 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
highcharts/node-export-server#679 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
highcharts/node-export-server#678 ·
-
Not working on s390xオープン
難易度 4/5 3〜5日 初心者へのやさしさ 30/100
highcharts/node-export-server#676 ·
highcharts/node-export-server の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
no-human-ai/no_human#659 ·
メンテナーはふだん 1 日以内に返信
-
[BUG] Multi-day events show "Ended" while still in progress対応中かも @tarunagnihotri534 が今日担当しました。 オープンbug
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
data-umbrella/du-event-board#231 · コメント 2 件 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 78/100
-
IO.get_env on Node truncates names at embedded NUL対応中かも @Yi-111-a が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
HigherOrderCO/Bend#1449 · コメント 1 件 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 72/100
cryptpad/documentation#162 ·