Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Single_Choice.values as Choice objects not Text #5640

Closed
jdunkerley opened this issue Feb 13, 2023 · 7 comments · Fixed by #5705
Closed

Single_Choice.values as Choice objects not Text #5640

jdunkerley opened this issue Feb 13, 2023 · 7 comments · Fixed by #5705
Assignees
Labels
p-high Should be completed in the next sprint x-new-feature Type: new feature request

Comments

@jdunkerley
Copy link
Member

Currently, the widgets within the IDE use a Vector Text to display a dropdown.

The API has been updated to provide a Vector Choice which support both a label and a value.

Before implementing the Vector Editor, we should move to the new API and avoid supporting both.

@jdunkerley jdunkerley added this to the Beta Release milestone Feb 13, 2023
@jdunkerley jdunkerley moved this from ❓New to 📤 Backlog in Issues Board Feb 13, 2023
@jdunkerley jdunkerley added p-high Should be completed in the next sprint x-new-feature Type: new feature request -gui labels Feb 13, 2023
@enso-bot
Copy link

enso-bot bot commented Feb 15, 2023

Paweł Grabarz reports a new STANDUP for today (2023-02-15):

Progress: Implemented support for custom labels. This change introduced an FRP feedback loop on widget selection, where expression change caused the widget to reemit old value. Added microtask based next_tick FRP node to mitigate similar issues in the future. It should be finished by 2023-02-16.

@Frizi Frizi moved this from 📤 Backlog to 👁️ Code review in Issues Board Feb 20, 2023
@sylwiabr
Copy link
Member

@Frizi was this merged?

@Frizi Frizi linked a pull request Feb 27, 2023 that will close this issue
4 tasks
@Frizi Frizi moved this from 👁️ Code review to 🔴 Changes requested in Issues Board Feb 27, 2023
@enso-bot
Copy link

enso-bot bot commented Mar 10, 2023

Paweł Grabarz reports a new 🔴 DELAY for yesterday (2023-03-10):

Summary: There is 25 days delay in implementation of the Single_Choice.values as Choice objects not Text (#5640) task.
It will cause 25 days delay for the delivery of this weekly plan.

Delay Cause: An integration of render loop with microtask sheduler was requested during review, so we can avoid shipping unfinished code feature. In the mean time, I worked on a higher priority task (#5083) that took a long time and was on sick leave.

Possible solutions: We should have merged it as is, making a separate task for completing the microtask scheduler.

@enso-bot
Copy link

enso-bot bot commented Mar 10, 2023

Paweł Grabarz reports a new STANDUP for yesterday (2023-03-10):

Progress: Added extensive documentation and tests for microtasks module and related FRP nodes. It should be finished by 2023-03-13.

@enso-bot
Copy link

enso-bot bot commented Mar 14, 2023

Paweł Grabarz reports a new STANDUP for yesterday (2023-03-13):

Progress: Added proper handling of constructors arguments for static dropdowns. Implemented import insertion for entries with resolvable fully qualified names. PR marked as ready for review. It should be finished by 2023-03-13.

@enso-bot
Copy link

enso-bot bot commented Mar 15, 2023

Paweł Grabarz reports a new STANDUP for the provided date (2023-03-09):

Progress: Introduced task phases to simplify scheduler aware render loop implementation. It should be finished by 2023-03-13.

@enso-bot
Copy link

enso-bot bot commented Mar 15, 2023

Paweł Grabarz reports a new STANDUP for the provided date (2023-03-08):

Progress: Added basic implementation of microtask scheduler aware render loop. It should be finished by 2023-03-13.

@Frizi Frizi moved this from 🔴 Changes requested to 🌟 Q/A review in Issues Board Mar 15, 2023
@mergify mergify bot closed this as completed in #5705 Mar 17, 2023
mergify bot pushed a commit that referenced this issue Mar 17, 2023
Implements #5640 and #5650

It made sense for me to implement those two together, as I wanted to make sure that the necessary widget API changes will support custom entry values for both dynamic and static data.

- Added support for custom dropdown labels defined on the method annotations
- Added shortening of static dropdown values, which resolves

| dynamic dropdown - custom labels | static dropdown - automatic shortening |
|-|-|
|![image](https://user-images.githubusercontent.com/919491/220117241-8682736e-d750-4eeb-b9bb-cd6cfce42356.png)|![image](https://user-images.githubusercontent.com/919491/220117412-05ad7f4a-3ccf-468b-a976-c52395a497e2.png)|

# Important Notes
During implementation I had multiple data update order issues caused by FRP network forming a diamond shape. Two inputs that are often updated together were combined with `all` combinator, and that was further fed into the dropdown. This caused two updates to propagate through the whole network, and one of them was immediately outdated. To fix this and similar future scenarios, I've added an `next_tick` FRP node. It buffers the incoming events until the next browser microtask, preserving only the last received event. Currently if it is called inside a `requestAnimationFrame` callback, the effects of that processing will only be rendered in the next frame. Later this can be mitigated by delaying the rendering logic until the microtask queue is empty.
@github-project-automation github-project-automation bot moved this from 🌟 Q/A review to 🟢 Accepted in Issues Board Mar 17, 2023
@farmaazon farmaazon moved this from 🟢 Accepted to 🗄️ Archived in Issues Board Mar 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
p-high Should be completed in the next sprint x-new-feature Type: new feature request
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants