Skip to content

w3c/conformance end event is not being published in ARIA spec #2147

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

Closed
jnurthen opened this issue Mar 8, 2019 · 6 comments · Fixed by #2148
Closed

w3c/conformance end event is not being published in ARIA spec #2147

jnurthen opened this issue Mar 8, 2019 · 6 comments · Fixed by #2148
Labels

Comments

@jnurthen
Copy link
Contributor

jnurthen commented Mar 8, 2019

Important info

  • URL to affected spec: https://w3c.github.io/aria/
  • ReSpec version: Click the ReSpec pill (e.g., 20.0.1): 24.4.4
  • [] I did a "hard refresh", but it's still busted.
    (not sure what this means)

Description of problem

What happened (e.g., it crashed)?:
ARIA specific scripts are not running.
For example https://github.com/w3c/aria/blob/master/common/script/aria.js - the events end and end-all do not seem to be called.

But what I was expecting?:
The end and end-all events to fire and the script to run

@saschanaz saschanaz added the bug label Mar 9, 2019
@saschanaz saschanaz changed the title Aria specs are broken w3c/conformance end event is not being published in ARIA spec Mar 9, 2019
@saschanaz
Copy link
Collaborator

The quick fix is to add explicit id="conformance" to the conformance section.

#2122 caused this where the module won't publish an end event when there is no explicit id conformance assigned.

cc: @marcoscaceres

@jnurthen
Copy link
Contributor Author

jnurthen commented Mar 9, 2019

Thanks - that has fixed the issue. If it is too hard to fix in respec then issuing a respec error if the section is missing would be fine. At least it would be easy to find and resolve the issue.

@marcoscaceres
Copy link
Contributor

We should see about fixing some of the aria scrpit to move off the old ReSpec events model. We have a lot of legacy code in ReSpec just to support the aria specs, and it’s a bit of a burden as we deprecated those events about 3 years ago.

@jnurthen
Copy link
Contributor Author

@marcoscaceres if there is someone who can help us I'd be happy to try to make this happen. The folks who wrote the code are not involved any more and I don't think any of us fully understand everything that is going on so some help would be appreciated.

@carmacleod
Copy link

@marcoscaceres Do you have a "migration guide" for how to "move off of the old ReSpec events model"?

The only "event-ish" thing I see documented in the current ReSpec wiki is: https://github.com/w3c/respec/wiki/respecIsReady
Is respecIsReady similar to the old "end" or "end-all" event, or is it something else entirely?

Note that the ARIA specs currently use the following ReSpec events:

  • respecEvents.sub ("start", function () {...});
  • respecEvents.sub ("save", function () {...});
  • respecEvents.sub ("end", function () {...});
  • respecEvents.sub ("end-all", function () {...});

@sidvishnoi
Copy link
Member

@carmacleod The events are not documented as they're implementation details. We'll slowly deprecate them in favor of well defined APIs (https://github.com/w3c/respec/issues/1976).

respecIsReady is practically same as the "end-all" event.

"start", "save" and "end" events don't exist anymore. For "start-all", use preProcess. and for "end-all", use postProcess.

The order is:

  1. "start-all"
  2. ...immediately followed by preProcess
  3. Run core plugins..
  4. postProcess
  5. ...immediately followed by "end-all"
  6. ...immediately followed by respecIsReady and done.

Me and Marcos are not fully available this month, but I'll be able to help more at the end of the month.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants