Respec: w3c/conformance end event is not being published in ARIA spec

Created on 8 Mar 2019  路  6Comments  路  Source: w3c/respec

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

bug

Most helpful comment

@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.

All 6 comments

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

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.

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鈥檚 a bit of a burden as we deprecated those events about 3 years ago.

@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.

@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 () {...});

@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.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

marcoscaceres picture marcoscaceres  路  5Comments

xfq picture xfq  路  4Comments

saschanaz picture saschanaz  路  5Comments

saschanaz picture saschanaz  路  6Comments

andrea-perego picture andrea-perego  路  3Comments