poezio-0.14 draft
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
This commit is contained in:
parent
4511504ba2
commit
cd5b0a8169
1 changed files with 116 additions and 0 deletions
116
content/posts/poezio-0.14.en.md
Normal file
116
content/posts/poezio-0.14.en.md
Normal file
|
@ -0,0 +1,116 @@
|
|||
---
|
||||
title: "Updates from the Poezio ecosystem"
|
||||
date: 2022-04-02T12:00:00+09:00
|
||||
translationKey: 'poezio-0.14'
|
||||
tags: [XMPP, Poezio, Slixmpp, OMEMO]
|
||||
draft: true
|
||||
---
|
||||
|
||||
Releases have happened recently that revolve around [Poezio][poezio], a TUI
|
||||
(Terminal UI) client for XMPP, including Poezio itself ([0.14][poezio014]),
|
||||
its backend XMPP library [Slixmpp][slix], and also the
|
||||
[poezio][poezio-omemo] and [slixmpp][slix-omemo] plugins for OMEMO.
|
||||
|
||||
# Many bug fixes and improvements
|
||||
|
||||
[Mathieui][mathieui] has already made a proper [release note for
|
||||
Slixmpp][slix180] for it and I invite you to read it! It includes many
|
||||
bugfixes of course, and internal changes around async handling, that may
|
||||
reflect on some of the APIs you are using.
|
||||
|
||||
Poezio has also seen many improvements.
|
||||
|
||||
Internally, for one, our default branch has also been moved to "main", many
|
||||
type hints have been added, implicit casts (safeJID) have been removed, lots
|
||||
of event handlers and calls are now async, APIs from Slixmpp are being used
|
||||
instead of redoing our own, many refactoring, various performance
|
||||
improvements.
|
||||
|
||||
A big license change has happened, and poezio is now licensed under GPLv3+!
|
||||
While I am not exactly in favour of intellectual property[^0], this is a
|
||||
straightforward lever we have against capitalism[^1]. Poezio being a prime
|
||||
resource for Slixmpp examples, GPL code should reasonably ensure that the 4
|
||||
freedoms reach the end-users. In practice, this will in term allow for
|
||||
poezio-omemo to be merged into Poezio. I am now personally hoping for Slixmpp
|
||||
to change its license as well.
|
||||
|
||||
[^0]: TODO: write about this. A TL;DR would certainly be "abolish intellectual
|
||||
property, and private property in general".
|
||||
[^1]: When they don't decide to ignore it and give us the finger.
|
||||
|
||||
And others more visible to users! To name a few, quality of life improvements
|
||||
such as `xmpp:...?join` URIs handling in `/join`, impromptu rooms creation is
|
||||
now more reliable and creates rooms with shorter names. Read more [in the
|
||||
changelog][poezio-changelog].
|
||||
|
||||
Plugins have also seen changes. A new `untrackme` plugin now replaces the
|
||||
deprecated `remove_get_trackers`. [Link Mauve][linkmauve] has also developped
|
||||
a sticker plugin, similar in essence to what [Movim][movim] has been doing for
|
||||
ages. And again many fixes.
|
||||
|
||||
Many of these fixes have been realized by [mathieui][mathieui], who is by far
|
||||
the biggest committer on the release, and in general probably the person with
|
||||
the best understanding of the project. Thanks also to louiz for providing the
|
||||
infrastructure all this time, and to eijebong, Ge0rG, Kaghav Gururajan,
|
||||
kaliko, Thomas Hrnciar and southerntofu for the many patches.
|
||||
|
||||
# Encryption
|
||||
|
||||
The Poezio `E2EEPlugin` API has been improved to accomodate changes in
|
||||
poezio-omemo, slixmpp-omemo and changes of the OMEMO backend library. Two
|
||||
plugins which are also seeing changes!
|
||||
|
||||
Heartbeats are now supported. Heartbeats are meta-messages which transfer only
|
||||
cryptographic key material (nothing else) and are used to strengthen OMEMO's
|
||||
forward secrecy. This is particularly relevant on clients like Poezio that can
|
||||
stay running in the back for some time, receiving messages without replying.
|
||||
|
||||
Some other changes include colored fingerprints using the [Consistent Color
|
||||
Generation][XEP-0392] document -- such as specified in the current (0.8)
|
||||
[OMEMO][XEP-0384] spec, and sending encrypted media (aesgcm URIs).
|
||||
|
||||
What hasn't changed is that this plugin lacks a UI and trust management.
|
||||
Hopefully this should come next, with a little motivation to do UI work.
|
||||
|
||||
# What comes next
|
||||
|
||||
All in all, there aren't (m)any revolutionary changes, but with these releases
|
||||
come many fixes for paper cuts that hopefully make users happier.
|
||||
|
||||
This makes me think that even though Poezio is far from being perfect, there
|
||||
doesn't seem to be many important things missing. There are however changes
|
||||
that would require a lot of refactoring, such as a multi-account feature.
|
||||
|
||||
We have decided to start migrating Poezio to Rust, in part to be able to
|
||||
refactor the project more easily, but also because it's a language we've come
|
||||
to appreciate over the years over multiple projects, but more specifically
|
||||
with [xmpp-rs][xmpp-rs].
|
||||
|
||||
All of this will happen right after the release, and we invite interested
|
||||
people to join the effort!
|
||||
|
||||
[poezio]: https://lab.louiz.org/poezio/poezio
|
||||
[slix]: https://lab.louiz.org/poezio/slixmpp
|
||||
[poezio-omemo]: https://lab.louiz.org/poezio/poezio-omemo
|
||||
[slix-omemo]: https://lab.louiz.org/poezio/slixmpp-omemo
|
||||
[movim]: https://movim.eu
|
||||
|
||||
[mathieui]: https://mathieui.net
|
||||
[linkmauve]: https://linkmauve.fr
|
||||
|
||||
[poezio014]: https://lab.louiz.org/poezio/poezio/-/tags/v0.14
|
||||
[poezio-changelog]: https://lab.louiz.org/poezio/poezio/-/raw/v0.14/CHANGELOG
|
||||
[slix180]: https://lab.louiz.org/poezio/slixmpp/-/tags/slix-1.8.0
|
||||
[slix181]: https://lab.louiz.org/poezio/slixmpp/-/tags/slix-1.8.1
|
||||
[slix182]: https://lab.louiz.org/poezio/slixmpp/-/tags/slix-1.8.2
|
||||
[poezio-omemo050]: https://lab.louiz.org/poezio/poezio-omemo/-/tags/v0.5.0
|
||||
[poezio-omemo051]: https://lab.louiz.org/poezio/poezio-omemo/-/tags/v0.5.1
|
||||
[poezio-omemo060]: https://lab.louiz.org/poezio/poezio-omemo/-/tags/v0.6.0
|
||||
[slix-omemo060]: https://lab.louiz.org/poezio/slixmpp-omemo/-/tags/v0.6.0
|
||||
[slix-omemo061]: https://lab.louiz.org/poezio/slixmpp-omemo/-/tags/v0.6.1
|
||||
[slix-omemo070]: https://lab.louiz.org/poezio/slixmpp-omemo/-/tags/v0.7.0
|
||||
|
||||
[XEP-0384]: https://xmpp.org/extensions/xep-0384.html
|
||||
[XEP-0392]: https://xmpp.org/extensions/xep-0392.html
|
||||
|
||||
[xmpp-rs]: https://xmpp.rs
|
Loading…
Reference in a new issue