pazz / alot

Terminal-based Mail User Agent
GNU General Public License v3.0
681 stars 162 forks source link

mailcap is deprecated in Python 3.11 and will be removed in 3.13 #1632

Open chayleaf opened 8 months ago

chayleaf commented 8 months ago

Is your feature request related to a problem? Please describe. See Python docs - mailcap module is deprecated

Describe the solution you'd like Writing a custom mailcap file loader that doesn't rely on the standard library is a good solution. Additionally, I think a non-standard extension of loading mailcap from alot config dir or $XDG_CONFIG_DIR/mailcap would be a good idea.

Describe alternatives you've considered

  1. Ditching mailcap files completely, opting for a mix of custom config (e.g. for html viewing) and mime associations (for opening files) and breaking backwards compatibility
  2. Telling users to stay at Python 3.12 till the end of time
pazz commented 8 months ago

Unfortunately it seems you are right :D Writing a custom viewer sounds like the least attractive option to me. We could just ship a copy of the latest mailcap module or indeed, use a local mapping instead of mailcaps. In the end this mainly requires a handler for html messages and a call to xdg-open for opening attachments..