As a short-term (and possibly long-term) fix, I proposed https://review.opendev.org/c/openstack/taskflow/+/944586 which removes the module dependent on asyncore from api doc. On 3/15/25 10:36 AM, Takashi Kajinami wrote:
Hi,
I noticed that doc job in taskflow repo was broken recently.
Example: https://review.opendev.org/c/openstack/taskflow/+/944495?tab=change-view-tab...
Digging into the failure, it seems the failure is caused by api doc build, trying to parse a module importing asyncore, because asyncore is no longer available in Python 3.12. IIUC Doc job was recently migrated from Ubuntu Jammy to Ubuntu Noble, which means that the default python version was bumped to 3.12.
We are aware of the deprecation/removal of asyncore and already deprecated the implementation in taskflow. However deprecation was merged during 2024.2 cycle so we can't remove it until 2025.2 cycle to follow SLURP policy.
There might be a way to drop the asyncore-related implementations from docs to unblock the doc job, I'm not sure if that is the right approach given the fact the implementation is deprecated but is still valid in older python versions.
Thus, I wonder if we can keep running doc job in Jammy for 2025.1, which still supports Ubuntu Jammy, and then migrate the job again during 2025.2 .
An alternative approach is to remove the asyncore implementation during this cycle, breaking SLURP policy, but I'm not sure if this can be the preferred option.
Thank you, Takashi