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

Sensor object can stuck in activating state #203

Closed
pozdnyakov opened this issue May 19, 2017 · 1 comment · Fixed by #197
Closed

Sensor object can stuck in activating state #203

pozdnyakov opened this issue May 19, 2017 · 1 comment · Fixed by #197
Assignees
Milestone

Comments

@pozdnyakov
Copy link

A Sensor object moves to activated state during the Update Observers abstract operation.
However, the Update Observers abstract operation is only invoked "If sensor’s latest reading["timestamp"] is not null" (https://w3c.github.io/sensors/#observe-a-sensor) meaning that it is never
invoked if the sensor did not provide data immediately.

@tobie
Copy link
Member

tobie commented May 19, 2017

Yeah, I think it should be invoked from the Update latest reading operation.

@tobie tobie modified the milestone: Level 1 May 22, 2017
pozdnyakov pushed a commit to pozdnyakov/sensors that referenced this issue May 23, 2017
…d internal slots used in the Sensor interface specification.

The refactoring goals are:

    Recompose abstract operations so that duplication of the algorithms steps is removed.
    Drop the unused abstract operations and internal slots.

Also the change brings the following behavioral changes:

Fixes w3c#152. Each Sensor instance reads the sensor readings considering its individual
frequency hint, sends 'onchange' and caches the sensor latest reading at this moment.
The Sensor's attributes return values from the cached reading.
Thus we achieve:

    appearance of a new Sensor instance with a higher frequency hint does not affect the behavior of the existing Sensor instances of the same type.
    consistency between the Sensor's 'onchange' notification and its attribute values.

Fixes w3c#168. A Sensor object returns reading values only in "activated" state and returns null otherwise.

Fixes w3c#199
Fixes w3c#200
Fixes w3c#201
Fixes w3c#203
pozdnyakov pushed a commit to pozdnyakov/sensors that referenced this issue Jun 28, 2017
…d internal slots used in the Sensor interface specification.

The refactoring goals are:

    Recompose abstract operations so that duplication of the algorithms steps is removed.
    Drop the unused abstract operations and internal slots.

Also the change brings the following behavioral changes:

Fixes w3c#152. Each Sensor instance reads the sensor readings considering its individual
frequency hint, sends 'onchange' and caches the sensor latest reading at this moment.
The Sensor's attributes return values from the cached reading.
Thus we achieve:

    appearance of a new Sensor instance with a higher frequency hint does not affect the behavior of the existing Sensor instances of the same type.
    consistency between the Sensor's 'onchange' notification and its attribute values.

Fixes w3c#168. A Sensor object returns reading values only in "activated" state and returns null otherwise.

Fixes w3c#199
Fixes w3c#200
Fixes w3c#201
Fixes w3c#203
pozdnyakov pushed a commit to pozdnyakov/sensors that referenced this issue Jun 30, 2017
…d internal slots used in the Sensor interface specification.

The refactoring goals are:

1) Stop firing events synchronously.
2) Clean up the internal slots after stop or error.
3) Fix logical errors in the abstract operations.
3) Recompose abstract operations so that duplication of the algorithms steps is removed.
4) Drop the unused abstract operations and internal slots.

Fixes w3c#199
Fixes w3c#200
Fixes w3c#201
Fixes w3c#203
Fixes w3c#218
Fixes w3c#215
Fixes w3c#204
pozdnyakov pushed a commit to pozdnyakov/sensors that referenced this issue Jun 30, 2017
…d internal slots used in the Sensor interface specification.

The refactoring goals are:

- Stop firing events synchronously.
- Reset internal slots values after stop.
- Fix logical errors in the abstract operations.
- Recompose abstract operations so that duplication of the algorithms steps is removed.
- Drop the unused abstract operations and internal slots.

Fixes w3c#203
Fixes w3c#218
Fixes w3c#215
Fixes w3c#204
Fixes w3c#126
Fixes w3c#243
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants