To add taproot support, what do they need? Is Taproot so difficult to implement?
Depends on the number of developers working on it, but it's not as simple as adding another address type since it uses a different signature scheme than the older script types.
Based from the commits list, there are only 2 to 3 active Electrum core developers with a few PRs from contributors.
If it's just sending to TapRoot and creation of imported (
non-HD) watch-only wallet containing TapRoot addresses, then it's already implemented.
Would support for descriptors be one of the requirements for P2TR addresses to be added to Electrum?
The core developers aren't fond of discussing about its progress here:
github.com/spesmilo/electrum/issues/7544But if you check Electrum's milestones backlog (
link), you can see that they're going after output descriptors.
First part towards that goal is already merged:
output script descriptors, part 1: change API of transaction.py #8230