For this change, I think we can just put an alias to async_basic back
in and release it this week.
A "semantic versioning" for Core is very painful and I think we
shouldn't do it. The versions for Core are tied to our own internal
releases, and we simply don't have this kind of guarantee as part of
our system. Think of it as our development branch.
Now, I do think we can get something like "semantic versioning" in the
context of the upcoming OCaml Platform. Platform releases should be
considerably less frequent than our every-2-week release schedule for
our libraries. Once the platform is released, one would largely leave
it unchanged, with only the occasional backported bugfix, and no API
changes.
I think that should give us the stability that we need. I agree that
it will help the community greatly to do so.
The OCaml Labs folks are working hard on making it possible to create
platform releases, but we're not quite there yet. In the meantime, I
think we just need to be thoughtful about the changes we do make.
In addition, I think we should generally be more reluctant to make
breaking changes than we've been in the past, as these changes now
have broader effects. Looking back on it, I tend to think this
particular change was a mistake.
y