Application components that do not depend on the widget library

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

メンテナーはふだん 1 日以内に返信

@SimonHeybrock がすでに取り組んでいます。

2026年11月5日 から。

評価

この issue はまだ評価されていません。

説明

Panel is what the prototype uses, and applications may end up on another widget library. Every GUI needs the same things, such as a list of the outputs computed so far, so those parts should not depend on the widget library, and the Panel layer should be thin.

Component Where it is today What does not need a widget library
What a request may name, record and output labels panel/listing.py all of it; it imports no Panel, but lives in the Panel package
List of outputs Outputs.refresh the rows; they are built next to the table
Details of an output Outputs._describe, records.describe the text and what it reads
Form from a spec panel/form.py, 843 lines the tree of fields, collecting values, and placing errors; _Scalar, _Group, _Record, and the rest hold these in one class with their widgets
Provenance graph panel/graph.py the nodes, edges, and layout
Outcome of a submission App.submit, App.poll the messages, and what happens when a record finishes (#148)
Approach

Extract these as the SANS application (#24) needs them, not ahead of it. That application and the generic App are the two users that show what is generic. Parts of Listing stand in for client calls that are still undecided (#95), so they may move into the client rather than into this layer.

Done when

The tests of the extracted components run without importing Panel, and what remains in ess.apps.panel only places widgets and connects their events.

Related

What a plot function returns, so that plots do not bind an application to one library, is in #149.

主要言語
Python
スター
0
フォーク
1
平均マージ
9時間 40分
マージ済み PR(30日)
60

環境構築

はじめの一歩

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

scipp/essapps のほかの issue

scipp/essapps の issue をすべて見る

似ている issue

Python の issue をもっと見る

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

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