service() fails to run inside later::with_temp_loop()
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 45/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- r
- 領域
- backend, networking
調査の方向性
Start with R/httpuv.R at lines 588-615, where service() and later::run_now() are involved, and compare the behavior inside later::with_temp_loop(). Reproduce the reported case using httpuv::service() and the documented global-loop workaround. Done means service() executes callbacks registered in the global loop without requiring that workaround.
索引モデルが issue の本文から書いたものです。
説明
Originally posted in https://github.com/rstudio/pagedown/issues/150
This issue is related to later >= 1.0.0 which introduces private event loops.
The first observation is that httpuv uses only the global event loop even if startServer() is called inside later::with_temp_loop().
The problem is that service() does not execute the callbacks registered in the global loop when called inside later::with_temp_loop().
This comes from the fact that later::run_now() executes the callbacks registered in the current loop.
https://github.com/rstudio/httpuv/blob/57e1d715587acd16b566a910551d08a399d96656/R/httpuv.R#L588-L615
For now, the workaround is to use later::with_loop(later::global_loop(), httpuv::service()) instead of httpuv::service().
- 主要言語
- C
- スター
- 252
- フォーク
- 87
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
rstudio/httpuv のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 46/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 30/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
似ている issue
-
Status: Opened
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
FriendsofECCE/ECCE#1018 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
immortalwrt/immortalwrt#2522 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
severity: low
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
luainkernel/lunatik#2530 ·
メンテナーはふだん 1 日以内に返信