Subject: Re: bug#75526: python.el uses treesit-declare-unavailable-functions despite requiring emacs >v24.4

From: JD Smith <[email-masked]>
Date: Thu, 27 Feb 2025 20:39:33 -0500

> On Jan 28, 2025, at 10:00 PM, Yuan Fu <[email-masked]> wrote:
> 
> 
> 
>> On Jan 27, 2025, at 10:55 PM, Daniel Mendler <[email-masked]> wrote:
>> 
>> Yuan Fu <[email-masked]> writes:
>> 
>>>> On Jan 12, 2025, at 10:19 PM, Yuan Fu <[email-masked]> wrote:
>>>> 
>>>> 
>>>> 
>>>>> On Jan 12, 2025, at 3:58 PM, Daniel Mendler via Bug reports for GNU Emacs, the Swiss army knife of text editors <[email-masked]> wrote:
>>>>> 
>>>>> Stefan Kangas <[email-masked]> writes:
>>>>> 
>>>>>> JD Smith <[email-masked]> writes:
>>>>>> 
>>>>>>> The TS support in python.el breaks versions of emacs prior to v30, since it calls the recently introduced macro `treesit-declare-unavailable-functions`.  The header still notes:
>>>>>>> 
>>>>>>> ;; Version: 0.28
>>>>>>> ;; Package-Requires: ((emacs "24.4") (compat "29.1.1.0") (seq "2.23"))
>>>>>>> ;; Maintainer: [email-masked]
>>>>>> 
>>>>>> Maybe this could be fixed in compat?
>>>>> 
>>>>> Yes, we can add the macro `treesit-declare-unavailable-functions` to
>>>>> Compat. But python.el needs to `(require 'treesit nil 'noerror)` instead
>>>>> of `(require 'treesit)`.
>>>> 
>>>> Oops, sorry about that. I didn’t know python.el is on ELPA. Let me know if there’s anything needed from me.
>>>> 
>>>> Yuan
>>> 
>>> Any progress on this? I can add it to compat.el if no one is available right now. Compat.el is on savannah, right?
>> 
>> No, this is too early. Compat-31 is still far away.
> 
> Thanks. I reverted the change in python.el
> 

Thanks.  Unfortunately there are now new changes to python.el which again break Emacs < 30.  The file still mentions: 

> Package-Requires: ((emacs "24.4") 

It now uses the Emacs 30 only `derived-mode-add-parents'.  If python.el is going to be developed primarily on master, it should probably be removed from MELPA or at least use compat.  I'll take this up with them.

JD