Path to this page:
./
chat/prosody,
Flexible communications server for Jabber/XMPP written in Lua
Branch: CURRENT,
Version: 13.0.3,
Package name: prosody-13.0.3,
Maintainer: pkgsrc-usersProsody is a flexible communications server for Jabber/XMPP written in Lua.
It aims to be easy to use, and light on resources. For developers it aims
to be easy to extend and give a flexible system on which to rapidly develop
added functionality, or prototype new protocols.
List of supported XEPs: https://prosody.im/doc/xeplist
Required to run:[
textproc/lua-expat] [
security/openssl] [
devel/libidn] [
devel/lua-filesystem] [
net/lua-socket] [
security/lua-sec] [
lang/lua52]
Required to build:[
pkgtools/cwrappers]
Master sites:
Filesize: 721.276 KB
Version history: (Expand)
- (2026-01-14) Updated to version: prosody-13.0.3
- (2026-01-07) Updated to version: prosody-13.0.2nb3
- (2025-11-05) Updated to version: prosody-13.0.2nb2
- (2025-10-15) Updated to version: prosody-13.0.2nb1
- (2025-07-15) Package has been reborn
- (2025-07-15) Package deleted from pkgsrc
CVS history: (Expand)
2026-01-14 14:03:05 by Stephen Borrill | Files touched by this commit (2) |  |
Log message:
prosody: update to 13.0.3
Changes since 13.0.2:
Fixes and improvements
mod_storage_sql: Set configurable wait time for locked SQLite3 database
net.server_event: Port TLS 1.3 channel binding method to libevent backend
mod_roster: Add command for cleaning out invalid contact JIDs
migrator: Allow migrating between different configs of the same driver
mod_admin_shell: Allow pinging any JID with xmpp:ping()
mod_invites: Accept -admin flag as shortcut for -role prosody:admin
mod_mam: Add send_legacy_offline_messages_to_mam_clients config option
mod_limits: Allow configuration of general s2s limit, and have s2sout \
inherit from s2sin
mod_storage_internal: Return item-not-found for unknown before/after ids
MUC: Fixes for room avatar caching
Minor changes
core.configmanager: Fix referencing previous config options #1950
MUC: Ensure allow MUC PM setting has valid value (fixes #1933: PM does not \
work on new MUCs)
mod_storage_sql: Assert that serialization of archive:set() payload succeeds
mod_smacks: Remove extra optional from sm element
mod_s2s_auth_dane_in: Fix caching SHA2-512 hash
MUC: Fix muc_room_default_presence_broadcast option not working
util.sslconfig: Fix error when applying ssl={[port]=...}
net.server_epoll: Restore idle checks after pause (e.g. rate limits)
util.jid: Validate domainparts using IDNA or as IP literals (fixes #1903: \
Invalid JID in Roster)
util.datamanager: Fix detection of index files created on different architectures
util.startup: Inform process manager about failure to reload config
mod_muc: Revert f4e16e6265e6 and invalidate avatar cache only on vcard change
mod_http_file_share: Improve debug logging around unexpected file sizes
mod_admin_shell: Ensure JIDs are normalized in xmpp:ping()
mod_invites: Return error when generating password reset for non-existent account
util.uuid: Update UUIDv7 to match RFC 9562
|
| 2026-01-07 09:49:50 by Thomas Klausner | Files touched by this commit (2525) |
Log message:
*: recursive bump for icu 78.1
|
| 2025-11-25 16:53:15 by Stephen Borrill | Files touched by this commit (1) |
Log message:
Expand comment explaning why we check for prosody.soc.
|
| 2025-11-05 10:17:44 by Stephen Borrill | Files touched by this commit (2) |
Log message:
prosody: enable clean shutdown
Add KEYWORD: shutdown to rc.d script.
Bump PKGREVISION.
|
| 2025-10-15 12:34:42 by Stephen Borrill | Files touched by this commit (6) |
Log message:
prosody: fix rc.d and add crypto
prosodyctl should not be used to manage the service, so adjust rc.d script
to run prosody -D.
Set permissions on desired directories.
Clean up socket to stop prosodyctl shell breaking at a restart.
Set path to socket in configuration file.
Build crypto.so (missing from makefile, but not GNUmakefile)
Bump PKGREVISION
|
2025-07-02 10:36:31 by Stephen Borrill | Files touched by this commit (4) |  |
Log message:
prosody: update to 13.0.2
Changes since 0.12.5:
13.0.2:
Fixes and improvements
mod_storage_internal: Fix queries with only start returning extra items
mod_invites_register: Stricter validation of registration events
Minor changes
MUC: Ensure allow MUC PM setting has valid value (fixes #1933: PM does not \
work on new MUCs)
mod_storage_sql: Delay showing SQL library error until attempted load
mod_storage_sql: Handle failure to deploy new UNIQUE index
mod_storage_sql: Add shell command to create tables and indices (again)
mod_s2s: Fix log to use formatting instead of concatenation (fixes #1461: \
Logging issues uncovered by mod_log_json)
modulemanager, util.pluginloader: Improve error message when load fails but \
some candidates were filtered
prosodyctl check config: add recommendation to switch from admin_telnet to shell
mod_storage_sql: Retrieve all indices to see if the new one exists
prosodyctl check config: List modules which Prosody cannot successfully load
net.http.files: Fix issue with caching
util.jsonschema: Fix handling of false as schema
mod_invites: Consider password reset a distinct type wrt invite page
configmanager: Emit config warning when referencing non-existent value
mod_admin_shell: Add role:list() and role:show() commands
MUC: Fix nickname registration form error handling (#1930)
MUC: Fix Error when join stanza sent without resource (#1934)
MUC: Factor out identification of join stanza
mod_invites_register: Don't restrict username for roster invites (thanks lissine)
mod_admin_shell: Fix matching logic in s2s:close (Thanks Menel)
mod_authz_internal: Improve error message when invalid role specified
mod_http_file_share: Add media-src 'self' to Content-Security-Policy header
mod_admin_shell: Visual tweaks to the output of debug:cert_index()
mod_http: Log problems parsing IP addresses in X-Forwarded-For (Thanks Boris)
mod_http: Fix IP address normalization (Thanks Boris)
util.prosodyctl.check: Improve reporting of DNS lookup problems
13.0.1:
Fixes and improvements
mod_admin_shell: Add debug:cert_index() command to aid debugging of \
automatic certificate selection
mod_tls: Enable Prosody's certificate checking for incoming s2s connections \
(fixes #1916: Impossible to override certificate verification policy in 13.0)
portmanager: Multiple fixes to use correct certificates for direct TLS ports \
(fixes #1915)
net.server_epoll: Use correct connection timeout when initiating Direct TLS
mod_roster: Fix shell commands when a component is involved (fixes #1908: \
error in prosodyctl shell roster attempting to subscribe a component)
mod_http_file_share: Explicitly reject all unsupported ranges
mod_http_file_share: Fix off by one in Range response
mod_admin_shell, prosodyctl shell: Report command failure when no password \
entered (fixes #1907: prosodyctl adduser: unexpected account creation on \
password mismatch)
Minor changes
mod_storage_sql: Drop legacy index without confirmation to ease upgrades
util.adminstream: Fix traceback on double-close (fixes #1913: Prosody fails \
to completely stop while shell watch:log is active)
certmanager: Improve logging for all cases where certs are skipped
mod_tls: Collect full certificate chain validation information
mod_s2s: Fix error detection with newer versions of OpenSSL
portmanager: Add debug log message to state which certificate we end up using
prosodyctl check certs: Use correct hostname in warning message about HTTPS
prosodyctl check: Be more robust against invalid disco_items, and show warning
spec/tls: Add TLS/certificate integration tests
mod_http_file_share: Improve error reporting by using util.error more
core.storagemanager: Fix tests by removing an assert that upset luarocks
core.usermanager: Fix COMPAT layer for legacy is_admin() function
certmanager: Remove obsolete and verbose index log (replaced by shell command)
doap: Add XEP-0333, XEP-0334, XEP-0156 and mod_http_altconnect
13.0.0:
New in this release
Modules
A number of popular modules have transitioned from community modules into \
Prosody with this release:
mod_cloud_notify
mod_http_altconnect
And the following modules are completely new:
mod_account_activity
mod_flags
mod_s2s_auth_dane_in
mod_server_info
Administration
New 'prosodyctl check features' recommends configuration improvements
mod_announce: Add shell commands to send messages to all users, online \
users, or limited by roles
New mod_account_activity plugin records last login/logout time of a user account
New 'watch log' command to follow live debug logs at runtime
Similarly, 'watch stanzas' can be used to capture XML logs in real-time
Networking
Honour 'weight' parameter during SRV record selection
Support for RFC 8305 "Happy Eyeballs" to improve IPv4/IPv6 connectivity
Support for TCP Fast Open in server_epoll (pending LuaSocket support)
Support for deferred accept in server_epoll (pending LuaSocket support)
MUC
Component admins are no longer room owners by default. This can be reverted \
to the old behaviour with component_admins_as_room_owners = true, but this has \
known incompatibilities with some clients. Instead, use the shell or ad-hoc \
commands to gain ownership of rooms when necessary.
Permissions updates:
Room creation restricted to local users (of the parent host) by default
restrict_room_creation = true restricts to admins, false disables \
all restrictions
Persistent rooms can only be created by local users (parent host) by default
muc_room_allow_persistent = false restricts to admins
Public rooms can only be created by local users (parent host) by default
muc_room_allow_public = false restricts to admins
Commands to show occupants and affiliations in the Shell
Save 'reason' text supplied with affiliation change
Owners can set MUC avatars (functionality previously in community module \
mod_vcard_muc)
Security and authentication
New role and permissions framework and API
Ability to disable and enable user accounts
A "grace period" is now supported for deletion requests via \
in-band registration
Advertise supported SASL Channel-Binding types (XEP-0440)
Implement RFC 9266 'tls-exporter' channel binding with TLS 1.3
Implement 'tls-server-end-point' channel binding
Full DANE support for s2s
No longer check certificate Common Names per RFC 9525
Storage
Performance improvements in internal archive stores
Ability to use SQLite3 storage with LuaSQLite3 instead of LuaDBI
SQLCipher support
Module API for developers
New 'keyval+' combined keyval/map store type
Config interface API can require that string values be picked from a provided set
Acceptable interval can be specified for number options
Method for parsing time periods / intervals from config
Method for retrieving integer settings from config
It is now easy for modules to expose a Prosody shell command, by adding a \
shell-command item
Modules can now implement a module.ready method which will be called after \
server initialization
module:depends() now accepts a second parameter 'soft' to enable soft \
dependencies
Configuration file
The configuration file now supports referring and appending to options \
previously set
Direct usage of the Lua API in the config file is deprecated, but can now be \
accessed via Lua.* instead
Convenience functions for reading values from files, with variant meant for \
credentials or secrets (e.g. from systemd-creds)
Changed in this release
Support sub-second precision timestamps
mod_blocklist: New option 'migrate_legacy_blocking' to disable migration \
from mod_privacy
Moved all modules into the Lua namespace prosody.
Forwarded header from RFC 7239 supported, disabled by default
mod_http_file_share now uses roles framework, affecting access from e.g. \
components
Intervals of mod_cron managed periodic jobs made configurable
When mod_smacks is enabled, s2s connections not responding to ack requests \
are closed.
Arguments to prosodyctl shell that start with ':' are now turned into method \
calls
Support for Type=notify and notify-reload systemd service type added
Support for the roster group access_model in mod_pep
Support for systemd socket activation in server_epoll
mod_invites_adhoc gained a command for creating password resets
[mod_cloud_notify] imported from community modules for push notification support
[mod_http_altconnect] imported from community modules, simplifying web clients
Removed in this release
Lua 5.1 support
XEP-0090 support removed from mod_time
util.rfc6724
|
| 2025-04-17 23:53:13 by Thomas Klausner | Files touched by this commit (2449) |
Log message:
*: recursive bump for icu 77 and libxml2 2.14
|
2025-01-27 14:57:51 by Adam Ciarcinski | Files touched by this commit (2) |  |
Log message:
prosody: updated to 0.12.5
0.12.5
Fixes and improvements
mod_blocklist: Drop blocked messages without error, option to restore compliant \
behavior
Minor changes
core.certmanager: Validate that ‘tls_profile’ is one of the valid values
net.http: Throw error if missing TLS context for HTTPS request
net.http.parser: Reject overlarge header section earlier
net.http.files: Validate argument to setup function
MUC: optimizations for broadcast of visitor presence (thanks Jitsi team)
net.server_event: Add ‘wrapserver’ API
scansion: Enable blocklist compat during tests to fix CI
prosodyctl check: Warn about invalid domain names in the config file
util.prosodyctl.check: Correct modern replacement for ‘disallow_s2s’
util.prosodyctl.cert: Ensure old cert is moved out of the way
util.prosodyctl.check: Improve error handling of UDP socket setup
mod_smacks: Destroy timed out session in async context (fixes 1884: ASYNC-01 in \
mod_smacks hibernation timeout)
mod_invites: Fix traceback when token_info isn’t set
mod_admin_shell: Allow matching on host or bare JID in c2s:show
mod_admin_adhoc: Fix log messages for reloading modules.
core.moduleapi: Default labels to empty list to fix error if omitted
mod_muc_mam: Improve wording of enable setting
mod_bookmarks: Suppress error publishing empty legacy bookmarks w/ no PEP node
mod_bookmarks: Clarify log messages on failure to sync to modern PEP bookmarks
mod_invites_adhoc: Fix result form type (thanks betarays)
mod_disco: Advertise disco#info and #items on bare JIDs to fix 1664: mod_disco \
on account doesn’t return disco#info feature
util.xtemplate: Fix error on applying each() to zero stanzas
|