Skip to content

Conversation

chenz
Copy link

@chenz chenz commented Jan 25, 2021

Two-argument version was obsoleted in 23.1 and will be removed in 28.1

Two-argument version was obsoleted in 23.1 and will be removed in 28.1
@ojab
Copy link

ojab commented Jul 2, 2021

tried native-comp @ jabber.el doesn't work :(

@ghost
Copy link

ghost commented Jun 21, 2023

I juts upgrade to emacs 28 and this error happens

@ojab
Copy link

ojab commented Jun 21, 2023

Melpa switched to alive fork, it works

tarsius pushed a commit to emacsmirror/jabber that referenced this pull request Jun 13, 2024
This is a fix for issue legoscia#37.

XEP-0115 describes how the presence iq elements presents
capabilities. In particular, capabilities are represented by a
verification string which consists of a hash of features and form data
fields that make up a capability list.

See, https://xmpp.org/extensions/xep-0115.html#ver-proc

The field list for a form consists of a "var" attribute with an
associated <value/> element.  It is not entirely clear from the XEP
how an empty <value/> element should be treated.  Unfortunately
jabber.el throws a 'wrong-type-argument for empty <values/>.

Here is an example form description sent from Psi+ that contains an
empty "os_version" value:

```xml
<x type="result" xmlns="jabber:x:data">
  <field type="hidden" var="FORM_TYPE">
    <value>urn:xmpp:dataforms:softwareinfo</value>
  </field>
  <field type="text-single" var="software">
    <value>Psi+</value>
  </field>
  <field type="text-single" var="software_version">
    <value>1.5.1650 (2023-06-10, 526ed0b8)</value>
  </field>
  <field type="text-single" var="os">
    <value>Debian GNU/Linux 11 (bullseye)</value>
  </field>
  <field type="text-single" var="os_version">
    <value/>
  </field>
</x>
```

Looking at the psi-plus-snapshots source suggests that an empty value
should be treated as an empty string.  Experimentation verifies that
this yields the same verification string that Psi+ sends with its
disco#info response.
tarsius pushed a commit to emacsmirror/jabber that referenced this pull request Jun 13, 2024
… from hdasch/emacs-jabber:fix-caps-ver-string into production

Fix issue legoscia#37, a runtime error generally masked unless running non-nil debug-on-error.  Even then, this is an infrequent error provoked by Psi+ clients.

Intention to merge mentioned on xmpp:jabber-el.

Reviewed-on: https://codeberg.org/emacs-jabber/emacs-jabber/pulls/38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants