Thanks Jay for this thread and for summarizing the T.C feeling.
My following sentences are not directly addressed to you (Jay), but to others T.C members.

Le mar. 14 mai 2024 à 18:28, Jay Faulkner <jay@gr-oss.io> a écrit :
Hi all,

As you may have read in Goutham's TC summary, the existing eventlet goal[0] is unlikely to gain consensus to merge. This appears to be due to the difference in needs between OpenStack projects, and belief that it's unlikely a single solution would serve them all.

I might agree with the fact it's unlikely a single solution would serve them all. I was going to update some sentence to make this optionality more stronger:
https://review.opendev.org/c/openstack/governance/+/902585/comment/bb363bda_e629b6bf/

Also, I was going to propose some adaptations to introduce futurist and executors:
https://review.opendev.org/c/openstack/governance/+/902585/comment/6b23377c_6f1cc3aa/

But, rather than speaking of "a single solution", I'd suggest speaking about "a solution by default".

Indeed, many comments made in this proposal strongly adopt Nova's perspective.
Nova is a major piece of Openstack, but Openstack is not only Nova.
By updating that sentence (see the previous links), we would make this proposal optional for teams who have the capabilities to design their own alternatives. Nova.

Teams like Nova have resources that other teams may not have.
T.C members should consider this difference in resources between teams.

T.C members are elected to adopt a global point of view, and not a team based point of view:
https://governance.openstack.org/tc/reference/principles.html#openstack-first-project-team-second-company-third

Else, without any default optional solution, teams with lower resources will be deprived of any solutions...

Teams should not consider the use of their surplus as legitimate when other teams are deprived of what is necessary.

As a community member, this is the kind of mindset that I expect from the Openstack governance.


Our current situation is:
1) Eventlet usage must be discontinued. The temporary maintainers are just that -- temporary -- and we should not expect eventlet to continue to be a valid path moving forward.
2) We have basic agreement that shared tooling, such as oslo libraries, should not dictate a specific threading model.

If by "should not dictate a specific threading model", you mean that Oslo forced the use of async/await, then I STRONGLY disagree about 2)...
Please show me where, in the proposed goal, oslo libraries dictate a specific threading model? => https://review.opendev.org/c/openstack/governance/+/902585

FYI the libs migration is detailed in the "How to migrate a library" section (around line 646 of the proposed goal).
And a living example of how the libs would work is available at https://github.com/4383/snippets/blob/main/python/facade/facade.py

To conclude, is it still worth it to spend time updating this proposal again or is your decision definitive?

--
Hervé Beraud
Senior Software Engineer at Red Hat
irc: hberaud