TeamSmil3y / PigeonPost

Python web framework • apparently easy to use
https://docs.pigeon.teamsmiley.org
MIT License
1 stars 0 forks source link

:ambulance::building_construction: Pigeon broken in Python3.12 onward #66

Open lstuma opened 4 months ago

lstuma commented 4 months ago

from Python3.12 onward multithreading is not possible atexit, i.e. Pigeon cannot create new threads and will therefore have to run before python exit.

This will mean we will need to perform some architectural changes in regards to exception handling, exit handling and the way Pigeon is actually run. Currently Pigeon runs automatically if Pigeon.autorun is enabled (default).

Using some hacky techniques Pigeon can still be started by calling Pigeon.run manually. This will probaby be the way to fix this.

lstuma commented 4 months ago

Proposal: (new way to start Pigeon)

from pigeon import Pigeon

Pigeon(mysettings)
Pigeon.attr = val

...

Pigeon.run()