Prosody trunk nightly builds: breaking API changes

11 views
Skip to first unread message

Matthew Wild

unread,
Aug 22, 2022, 11:20:14 AM8/22/22
to Prosody IM Users Group, Prosody IM Developers Group
Hi folks,

This message is about changes that affect:

- anyone running Prosody's development branch (trunk) with extra modules
- developers writing modules that aim to run on trunk and future
Prosody versions

Feel free to skip the rest of this message if neither of these things
apply to you. If they do, read on...

We've introduced a new role/permissions API in Prosody. It is part of
our current project to overhaul authentication and authorization in
Prosody and XMPP in general.

The main change you need to be aware of is that the
'usermanager.is_admin()' API has been deprecated. Although Prosody is
now using the new system internally, we have added a temporary
compatibility method to keep is_admin() working for now for an easier
transition. However, it will be disabled by default in the coming
weeks, followed by removal at some point before the next major
release.

If you are a module developer and want your module to continue working
for trunk nightly builds and future versions of Prosody, you may need
to make some changes if your code calls is_admin().

If you are a user of trunk nightly builds, but you use extra modules
(including community modules from prosody-modules) then you may be
affected. The most obvious step you need to take is to ensure that all
your modules are up to date, as many have already been ported to the
new API. Prosody will log warnings if it detects usage of the
deprecated API, so keep an eye on those log files. If necessary,
contact the module developer for support.

You can find more information about the changes in our blog post at
https://blog.prosody.im/role-auth/

The changes will be part of the next nightly build (1444).

Happy to answer any questions as always!
Reply all
Reply to author
Forward
0 new messages