Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
I
iTasks-SDK
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 74
    • Issues 74
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 6
    • Merge Requests 6
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • clean-and-itasks
  • iTasks-SDK
  • Issues
  • #345

Closed
Open
Opened Sep 25, 2019 by Camil Staps@cstaps🚀Owner

Events can get lost when a task is stepped while an event is queued in the frontend

The JS components queue events so that the server isn't flooded with many small updates (this is called the eventTimeout and is set to 500ms for text fields at the moment). This however means that queued events can get lost when they are still queued when the task is stepped. For instance:

Start w = doTasks t w

t :: Task String
t = enterInformation [] >>= viewInformation []

If you enter at least two characters and then click quickly on 'Continue', the next view will only contain the first character. Subsequent characters were in the queue and will be sent but ignored by the server.

I don't think this can be solved purely on the client, because there may also be cases where the server causes the step. Anyway the anti-flooding mechanism shouldn't really be on the client if we're concerned about security, so perhaps we should consider moving this queue to the server.

This issue is primarily here for documentation; I haven't found this to be a problem in realistic usage yet.

Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: clean-and-itasks/iTasks-SDK#345