Allow for configuring the default values of properties. Provide a machine readable file that includes all default values of properties for each widget
维护者通常 2 天内回复
还没有人认领这个 Issue。
评估
调研方向
Start by locating where Phoebus widgets define their property defaults and how those definitions are exposed to clients. Compare the proposed machine-readable file with the alternative of generated documentation, then identify how either approach can cover every widget and property. Done means clients can reliably determine omitted property values, with the result kept in sync when defaults change.
由索引模型根据 Issue 内容生成。
描述
It is legal in phoebus to have a bob file that defines a widget that omits most of the property tags. Any omitted tags will have some default value, which of course will not be available to a client that reads just the xml.
This is problematic for cases where we'd like to do things like check the state of a set of screens against some condition. Unless we happen to know what the default value of a particular property is for a particular widget, we cannot perform the check if the xml does not include the information.
Of course, I could open the editor, drag a widget, and see what the initial value is, but this is a brittle solution that is subject to breaking if the defaults ever change. It would be good if the default values for all properties for all widgets were in a machine readble (i.e. json or yaml) file with a defined schema somewhere that clients could read for a base state. Alternatively, it would be good if at least there were a automatically updated document that listed all of these default values in the documentation.
For context, I am developing a linter for phoebus screens: https://github.com/NSLS2/phoebuslint. It works pretty well but I am running into things like this:
Have a rule that checks if a widget is outside of the bounds of a screen. The screen is configured to be 400 x 600, but since 600 is the default width it is omitted in the xml. The linter doesn't know about this and defaults to 0, so every widget gets marked as out of bounds.
For now, I've hard coded the default value, but it would be great if we could put together a more robust solution.
- 主要语言
- Java
- 星标
- 130
- 派生
- 132
- 平均合并
- 2 天 11 小时
- 30 天内合并 PR
- 19
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 没有贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ControlSystemStudio/phoebus 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 62/100
ControlSystemStudio/phoebus#3983 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
ControlSystemStudio/phoebus#3979 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 80/100
ControlSystemStudio/phoebus#3962 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 65/100
ControlSystemStudio/phoebus#3865 · 1 条评论 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 52/100
ControlSystemStudio/phoebus#3980 ·
维护者通常 2 天内回复
查看 ControlSystemStudio/phoebus 的全部 Issue
相似的 Issue
-
staticAssetsPath follows symlinks outside the directory on Windows可能已有人在做 @ybelMekk 今天认领。 未关闭bug security findings
难度 2/5 1-3 小时 新手友好度 84/100
navikt/mock-oauth2-server#1132 ·
维护者通常 1 天内回复
-
agent:working follow-up
难度 2/5 1-3 小时 新手友好度 76/100
Sanne/incus-spawn#1683 · 2 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
checkstyle/checkstyle#22210 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 67/100
google/error-prone#6239 · 1 条评论 ·
维护者通常 1 天内回复
-
[Failing Test]: BigqueryClient.queryUnflattened fails BigQuery ITs on a transient 503可能已有人在做 @mxtymoshyk 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 77/100
维护者通常 1 天内回复