Open rbuckton opened 4 years ago
I think the change to ecmarkup would be straightforward, and I don't have other use-cases in mind which would require it to be synchronous. Go for it.
I've shipped 3.0.0-beta.0
which has the async-only API, plus cleans up a number of other obsolete methods.
This seems to be done now, though I note that the docs still talk exclusively about bindSync
and friends.
I have a few outstanding things to clean up before I close this, but yes its mostly done.
To simplify the internals of
grammarkdown
, I'm considering dropping the synchronous APIs such asSyncHost
,parseSync
,bindSync
,checkSync
, etc. However, doing so would have a significant impact on tools such asecmarkup
.@bakkot: If I were to make this change,
ecmarkup
would need to make thewalk
andlint
functions asynchronous. If necessary, I can create a PR againstecmarkup
that does this in advance of this change. Thewalk
function shouldn't be too much trouble because its only called by itself andSpec.prototype.build
(which is alreadyasync
), though I haven't investigated the impact it would have onlint
.If there are scenarios that you believe would be a blocker for me removing the synchronous APIs, please let me know. If there are no blockers, I would plan to ship this change with a semver-major bump to
3.0.0
.