[Standards] Off-by-one error in XEP-372 "References"

Andrew Nenakhov andrew.nenakhov at redsolution.com
Fri Dec 4 13:34:11 UTC 2020


Well most participants of the previous discussion on this list were
strongly against i+0 approach which we did at first, so since we
didn't really hold any strong position on this, we just switched to
i+1. The one advantage of this approach is that you can derive the
length of the string directly by subtracting begin value from end
value (big help if you have difficulties with +1 operation), and it's
somewhat more common with array slicing in various programming
languages.

But yes, the original point still stands, the text of the XEP clearly
contradicts the examples.

пт, 4 дек. 2020 г. в 18:24, Severino Ferrer de la Peñita <seve at delape.net>:
>
> Hi,
>
> I already discussed this with the author, you can read more about it on the following logs: https://logs.xmpp.org/jdev/2020-10-06?p=h#2020-10-06-f8688aaa95f97e76
>
> I honestly don't believe `i+1` is correct.
> Could you please share some of that feedback, Andrew?
>
>
> Kind regards,
>
> Seve
>  https://delape.net
>  https://github.com/SeveFP
>
>
> > On 04/12/2020 13:40 Andrew Nenakhov <andrew.nenakhov at redsolution.com> wrote:
> >
> >
> > We're currently use it in all our clients, extensively. We finally
> > settled on +1 offset because of feedback. That said, we use our own
> > namespace because we can and because XSF moves XMPP in the wrong
> > direction. :-D
> >
> > пт, 4 дек. 2020 г. в 17:33, JC Brand <lists at opkode.com>:
> > >
> > > Hey folks
> > >
> > > In XEP-0372 in section 3.1, there is the following text:
> > >
> > > > An end attribute is similarly  used for the index of the last character of the reference
> > >
> > > However, in the example in 3.2, the "end" attribute is set to 78, which
> > > is the index of the space after the nickname "Juliet".
> > >
> > > The example appears to contradict the text. I'd like to fix this, but
> > > I'm not sure what the original author's intention was. I'm assuming the
> > > text is correct and the example is wrong.
> > >
> > > AFAIK only Converse.js and maybe Movim support this incomplete XEP.
> > >
> > > If anyone else is using it, I'd appreciate it if you could let me know
> > > which offset you're using. Converse is currently following the example
> > > in the XEP, i.e. i+1.
> > >
> > > Thanks
> > > JC
> > >
> > >
> > > _______________________________________________
> > > Standards mailing list
> > > Info: https://mail.jabber.org/mailman/listinfo/standards
> > > Unsubscribe: Standards-unsubscribe at xmpp.org
> > > _______________________________________________
> >
> >
> >
> > --
> > Andrew Nenakhov
> > CEO, redsolution, OÜ
> > https://redsolution.com
> > _______________________________________________
> > Standards mailing list
> > Info: https://mail.jabber.org/mailman/listinfo/standards
> > Unsubscribe: Standards-unsubscribe at xmpp.org
> > _______________________________________________
> _______________________________________________
> Standards mailing list
> Info: https://mail.jabber.org/mailman/listinfo/standards
> Unsubscribe: Standards-unsubscribe at xmpp.org
> _______________________________________________



-- 
Andrew Nenakhov
CEO, redsolution, OÜ
https://redsolution.com


More information about the Standards mailing list