The note says that it's not worth investigating how to make the build
system not look for this file if in API mode, as an empty file that
isn't used hurts no one and probably keeps everything simpler.
I've switched to a new M1 laptop which couldn't build the old dependencies because the old ring library version doesn't compile on mac arm (but new version do). There's no way to update ring in isolation, so I've got to update the whole tree at once.
This ensures the yup-oauth2 version stays with the 1.x major version
allowing the yup-oauth2 project to make a breaking change via a 2.x
major version.
Ref: https://github.com/dermesser/yup-oauth2/pull/86
This might mean we need additional type parameters, but I will see how
it's going to work out.
In theory, we could define a new trait for Seek+Read, but this would
mean that we couldn't contain owned streams.
For max flexibility, it's better to have additional type parameters
and use BorrowMut to allow ownership, and borrow.
That way, we have a common library to pull in from the main repository,
and a space for testing new code (in a partial implementation).
Next there will be generated object structures.
That will allow interaction between client and authentication attempts.
It also shows how cumbersome it is to deal with all these
generics ... but hey, you gotta do what you gotta do.
If boxes of pointers would be used, it would be easier to handle, but
enforces a certain memory model. That, of course, is not desired.