https://github.com/BombusMod/BombusMod/issues/130#issuecomment-1034360835 wins for fastest fix (that I know of)
adiaholichas joined
uhoreghas left
homebeachhas left
Rixon 👁🗨has left
Matthewhas left
Half-Shothas left
Half-Shothas joined
Matthewhas joined
Rixon 👁🗨has joined
uhoreghas joined
homebeachhas joined
jcbrandhas left
Link Mauvehas left
debaclehas left
intosihas joined
Link Mauvehas joined
adiaholichas left
adiaholichas joined
millesimushas joined
Andrzejhas left
intosihas left
xnamedhas left
վարյաhas left
վարյաhas joined
adiaholichas left
florettahas left
adiaholichas joined
Andrzejhas joined
marc0shas left
marc0shas joined
qwestionhas left
Andrzejhas left
kyemxdenhas left
Maranda[x]has left
adiaholichas left
Steve Killehas left
Kevhas left
Kevhas joined
Stevehas joined
adiaholichas joined
Titihas left
intosihas joined
վարյաhas left
վարյաhas joined
Maranda[x]has joined
Titihas joined
Maranda[x]has left
Maranda[x]has joined
adiaholichas left
intosihas left
kyemxdenhas joined
Maranda[x]has left
adiaholichas joined
davidhas left
adiaholichas left
davidhas joined
gooyahas left
adiaholichas joined
Titihas left
Maranda[x]has joined
Titihas joined
adiaholichas left
adiaholichas joined
Andrzejhas joined
intosihas joined
adiaholichas left
adiaholichas joined
Andrzejhas left
intosihas left
kyemxdenhas left
Calvinhas joined
govanifyhas left
govanifyhas joined
millesimushas left
Yagizahas joined
Calvinhas left
Thilo Molitorhas left
վարյաhas left
վարյաhas joined
qwestionhas joined
jgarthas left
intosihas joined
intosihas left
intosihas joined
govanifyhas left
neshtaxmpphas left
govanifyhas joined
neshtaxmpphas joined
neshtaxmpphas left
Menelhas joined
Andrzejhas joined
վարյաhas left
վարյաhas joined
intosihas left
intosihas joined
neshtaxmpphas joined
վարյաhas left
վարյաhas joined
Thilo Molitorhas joined
վարյաhas left
վարյաhas joined
Andrzejhas left
վարյաhas left
վարյաhas joined
jcbrandhas joined
msavoritiashas joined
msavoritiashas left
msavoritiashas joined
stphas joined
Menelhas left
Menelhas joined
ti_gj06has joined
marc0shas left
marc0shas joined
chronosx88has left
chronosx88has joined
Sevehas joined
jcbrandhas left
lovetoxhas left
lovetoxhas joined
intosihas left
eevvoorhas left
eevvoorhas joined
adiaholichas left
adiaholichas joined
intosihas joined
wladmishas left
adiaholichas left
Tobiashas joined
Andrzejhas joined
adiaholichas joined
adiaholichas left
intosihas left
intosihas joined
atomicwatchhas joined
adiaholichas joined
Andrzejhas left
emushas joined
վարյաhas left
վարյաhas joined
florettahas joined
intosihas left
adiaholichas left
pasdesushihas joined
վարյաhas left
վարյաhas joined
adiaholichas joined
emus
regarding CVEs, can this be reviewed?
https://github.com/xsf/xmpp.org/pull/1007
Ge0rG?✎
emus
regarding CVEs, can this be reviewed?
https://github.com/xsf/xmpp.org/pull/1001
Ge0rG? ✏
jcbrandhas joined
Titihas left
Paganinihas left
restive_monkhas left
Titihas joined
florettahas left
restive_monkhas joined
florettahas joined
dwdhas joined
Maranda[x]has left
Maranda[x]has joined
adiaholichas left
wurstsalathas joined
adiaholichas joined
վարյաhas left
վարյաhas joined
dwdhas left
adiaholichas left
tykaynhas joined
intosihas joined
lovetoxhas left
adiaholichas joined
florettahas left
florettahas joined
intosihas left
marc0shas left
marc0shas joined
lskdjfhas joined
marc0shas left
marc0shas joined
lovetoxhas joined
Titihas left
florettahas left
druthidhas left
edhelas
Movim is not using _xmppconnect and not connecting using BOSH or WS, just for you to know
edhelas
So I shoudn't be affected
druthidhas joined
intosihas joined
debaclehas joined
jonas’
moparisthebest, *raises hat* good find
jonas’
I did not realize this despite looking into _xmppconnect more closely for xmppnetv2
jonas’
I do not like that the result is more HTTP though.
jonas’
but that's, for once, not your fault :)
ti_gj06has left
lskdjfhas left
վարյաhas left
florettahas joined
harry837374884has left
neshtaxmpphas left
neshtaxmpphas joined
harry837374884has joined
florettahas left
dwdhas joined
Mikaelahas joined
adiaholichas left
debaclehas left
debaclehas joined
dan.caseleyhas left
dan.caseleyhas joined
florettahas joined
adiaholichas joined
Menelhas left
adiaholichas left
ti_gj06has joined
adiaholichas joined
adiaholichas left
Alexhas joined
Ge0rGhas left
junaidhas left
junaidhas joined
emushas left
adiaholichas joined
Andrzejhas joined
Ge0rGhas joined
adiaholichas left
dwdhas left
adiaholichas joined
Ge0rGhas left
Ge0rGhas joined
Alexhas left
Alexhas joined
goffihas joined
adiaholichas left
adiaholichas joined
emushas joined
debaclehas left
debaclehas joined
Dele Olajidehas joined
Dele Olajidehas left
Dele Olajidehas joined
debaclehas left
debaclehas joined
վարյաhas joined
ti_gj06has left
վարյաhas left
վարյաhas joined
Andrzejhas left
debaclehas left
debaclehas joined
Dele Olajidehas left
Dele Olajidehas joined
Titihas joined
adiaholichas left
marc0shas left
marc0shas joined
dan.caseleyhas left
dan.caseleyhas joined
kyemxdenhas joined
Dele Olajidehas left
marc0shas left
marc0shas joined
վարյաhas left
վարյաhas joined
Guushas joined
Dele Olajidehas joined
ti_gj06has joined
argentumhas left
Alexhas left
Alexhas joined
Stevehas left
Stevehas joined
Stevehas left
Stevehas joined
Dele Olajidehas left
վարյաhas left
huhnhas joined
Dele Olajidehas joined
Rixon 👁🗨has left
homebeachhas left
Matthewhas left
Half-Shothas left
uhoreghas left
Half-Shothas joined
Matthewhas joined
Rixon 👁🗨has joined
uhoreghas joined
homebeachhas joined
Dele Olajidehas left
Dele Olajidehas joined
lskdjfhas joined
վարյաhas joined
Andrzejhas joined
harry837374884has left
Dele Olajidehas left
adiaholichas joined
Dele Olajidehas joined
Andrzejhas left
Andrzejhas joined
վարյաhas left
վարյաhas joined
Menelhas joined
harry837374884has joined
վարյաhas left
վարյաhas joined
Link Mauve
emus, where is that 404 page used? I get the regular nginx page on unknown pages. :(
emus
https://github.com/xsf/xmpp.org/pull/1001
emus
dunno whats not working
Link Mauve
Yes, the 404 page from this PR.
Link Mauve
I didn’t even know we had one.
emus
can you review for pr 1001
wurstsalat
Link Mauve, it's a standard page from the default theme (not used atm)
Link Mauve
Oh, I see, thanks. :)
marc0shas left
marc0shas joined
millesimushas joined
pasdesushihas left
pasdesushihas joined
beanhas joined
Wojtekhas joined
adiaholichas left
adiaholichas joined
florettahas left
florettahas joined
adiaholichas left
alacerhas left
qwestionhas left
qwestionhas joined
debaclehas left
debaclehas joined
adiaholichas joined
karoshihas joined
alacerhas joined
harry837374884has left
harry837374884has joined
restive_monkhas left
Neustradamushas left
millesimushas left
Neustradamushas joined
debaclehas left
stphas left
robertooohas left
robertooohas joined
millesimushas joined
robertooohas left
marc0shas left
harry837374884has left
marc0shas joined
restive_monkhas joined
stphas joined
Andrzejhas left
Andrzejhas joined
alacerhas left
alacerhas joined
intosihas left
intosihas joined
Wojtekhas left
Wojtekhas joined
lskdjfhas left
lskdjfhas joined
intosihas left
intosihas joined
lskdjfhas left
lskdjfhas joined
lskdjfhas left
lskdjfhas joined
lskdjfhas left
lskdjfhas joined
djorzhas joined
harry837374884has joined
djorzhas left
adiaholichas left
lskdjfhas left
lskdjfhas joined
adiaholichas joined
florettahas left
alacerhas left
ti_gj06has left
florettahas joined
ti_gj06has joined
qwestionhas left
adiaholichas left
adiaholichas joined
rafasaurushas left
rafasaurushas joined
Link Mauve
larma, in XEP-0446, why did you go for @dimensions (width"x"height) instead of the more common @width and @height?
phrykhas left
ti_gj06has left
govanifyhas left
govanifyhas joined
Holger
I'm late to the _xmppconnect party, and not into JavaScript. I was assuming the browser wouldn't even permit DNS queries (and that .well-known was invented for this reason). So that's not true?
inkyhas joined
Zash
DoH to the "rescue" ?
uhoreghas left
homebeachhas left
Matthewhas left
Rixon 👁🗨has left
Half-Shothas left
Half-Shothas joined
Matthewhas joined
Rixon 👁🗨has joined
uhoreghas joined
homebeachhas joined
Zash
But you can use JavaScript outside of browsers, e.g. with FirefoxOS and such, which may have both raw TCP sockets and real DNS APIs
uhoreghas left
homebeachhas left
Matthewhas left
Rixon 👁🗨has left
Half-Shothas left
Half-Shothas joined
Matthewhas joined
Rixon 👁🗨has joined
uhoreghas joined
homebeachhas joined
Holger
Well sure, plus you can obviously use WebSocket outside of JavaScript, but then why wouldn't I be able to verify the certificate just as with plain TCP (non-WebSocket) access?
MattJ
Which certificate would you verify?
MattJ
JS is even more limited in this regard
MattJ
If you make a request to https://evil.com/http-bind, the browser will naturally just verify the cert is for evil.com
Holger
Ah. So the issue is about the combinartion "WebSocket with JavaScript outside the browser (i.e. Node.js)"?
MattJ
Javascript isn't relevant to the issue at all, really
MattJ
Any client that uses the DNS lookup to obtain this info is using an insecure protocol to obtain connection info
Holger
As I said my (mis?)understanding was that querying TXT records from within the browser wasn't even possible in the first place.
Zash
You're receiving a connection endpoint over an insecure channel, you must not allow it to alter the identifier you compare the certificate to.
MattJ
That's usually *not* JS stuff, because they use the HTTPS discovery alternative instead
Holger
Sure.
MattJ
So most/all JS clients are probably unaffected
wgreenhousehas left
Zash
Unless they somehow do http:///.well-know ...
MattJ
That would be more work, and typically blocked by browsers these days afaik
MattJ
(if the script itself is loaded over https:// )
Holger
I'm definitely missing something :-)
Zash
Holger, this affects desktop clients doing _xmppconnect TXT lookups
Zash
e.g. Pidgin will automatically pick up on _xmppconnect and connect over BOSH
alacerhas joined
MattJ
Holger, '156 defines two methods of advertisement: DNS and HTTPS. Everything using DNS is insecure.
Holger
How's their situation different from desktop clients performing an SRV lookup?
Zash
(unless DNSSEC ... 😭️)
Holger
Well. Gajim uses DNS.
MattJ
Because when you do SRV lookup you verify the cert against the original domain
Zash
(also modulo DNSSEC)
Holger
Yes.
MattJ
You know you want to connect to "example.com", so when SRV tells you to connect to xmpp.evil.com, you verify you get a cert for 'example.com' still
Holger
My question remains, why can't the desktop client perform an _xmppconnect lookup, connect over BOSH, and verify the cert against the original domain.
MattJ
(for the purposes of this whole discussion, DNSSEC doesn't exist)
MattJ
It could
MattJ
So it could connect to https://evil.com/ and expect it to serve a cert for example.com instead?
Holger
That's what I would've assumed, sure.
MattJ
This is a very unusual configuration in the web world, and would require some hoops to jump through to set up
Zash
Probably tricky to convince every HTTPS library to do taht✎
Zash
Probably tricky to convince every HTTPS library to do that ✏
MattJ
But yes, if you did it that way it would not be insecure
Zash
NSS supposedly made it impossible (which ruled out SRV records even)
MattJ
But everyone just grabs the URL and passes it to their HTTP stack
Holger
Oh so the issue is server-side. I hadn't thought of that.
uhoreghas left
homebeachhas left
Matthewhas left
Rixon 👁🗨has left
Half-Shothas left
Half-Shothas joined
Matthewhas joined
Rixon 👁🗨has joined
uhoreghas joined
homebeachhas joined
Holger
Ok yes plus maybe client-side HTTP library APIs. I see.
MattJ
I'm pretty sure if you serve a BOSH URL of https://evil.com/ with a cert of https://example.com/ 100% of everything is going to break trying to load that URL
MattJ
as it should, really
MattJ
In the past when implementing '156 for something, I did verify that the domain of the endpoint was the same as the XMPP domain, otherwise ignore it
intosihas left
intosihas joined
Holger
I see.
Menelhas left
Menelhas joined
Zash
MattJ, I would imagine that you were the only one
Zash
Oh, you mean for xmpp:example.com assert https://example.com/* ?
Kudos to moparisthebest for... actually doing something :P
adiaholichas left
kyemxdenhas joined
rq77has joined
ti_gj06has joined
Calvinhas joined
adiaholichas joined
millesimushas left
adiaholichas left
Calvinhas left
Dele Olajidehas left
adiaholichas joined
leochiuhas joined
Paganinihas joined
alacerhas left
alacerhas joined
Menelhas left
dwdhas left
adiaholichas left
Calvinhas joined
adiaholichas joined
millesimushas joined
Link Mauve
larma, you mention “Hash the resulting string using the algorithm choosen for the sticker pack.” in XEP-0449, does it mean you want to allow only a single hash, instead of the usual hash agility thingy?
Link Mauve
Would XEP-0103 also be useful to distribute cid: URIs? I wouldn’t expect so.
Link Mauve
But if not, should we create another XEP for shipping stickers that way?
adiaholichas left
florettahas left
bunghas joined
restive_monkhas left
adiaholichas joined
ti_gj06has left
florettahas joined
moparisthebest
it mainly annoys me that I must have read '156 multiple dozens of times, and fully implemented and end-to-end tested websocket support, and only noticed it during some light refactoring before the final push https://github.com/moparisthebest/xmpp-proxy/blob/master/src/srv.rs#L77
restive_monkhas joined
moparisthebest
and it's surprisingly bad because even though a client does all *other* starttls/tls validation correctly, this is all it takes, an attacker can just block those and force a connection over websocket to gain mitm
xnamedhas joined
marc0shas left
marc0shas joined
marc0shas left
marc0shas joined
pjnhas joined
Link Mauve
The hashing algorithm in XEP-0449 isn’t clear, especially around hashes.
Link Mauve
Should I encode the bytes of the hash, or its base64 representation?
Link Mauve
I’d rather the former, as it is what gets out of my parser.
Link Mauve
Having a complete example like in XEP-0390 would be useful.
matkorhas left
matkorhas joined
xnamedhas left
larma
Link Mauve,
- re dimensions: The reason was, originally, that the field shouldn't require exactly 2 dimensions, although the description indeed now reads like that. Maybe width and height would indeed be easier in practice.
- re hash: the ID needs to be one ID. I guess if you put two hashes on the pack, you can pick any of the two as your hash for ID generation
- re cid: I don't think 0103 is a good fit for cid uris. I also don't really see the need and future for cid URIs anyway. Instead just use Jingle with IBB which is effectively the same functionality just that the payload doesn't need to fit in one stanza.
Link Mauve
larma, other dimensions, such as for a 3D sticker for instance?
larma
446 is for any kind of file, not just stickers. But yes, 3d stickers
jonas’
what about non-spatial dimensions?
Link Mauve
Ah right, I forgot the part where the ID is also truncated and reused for the id.
Link Mauve
Why is it truncated btw?
Link Mauve
In XEP-0084 it isn’t for instance.
larma
jonas’, I think 3d is not far off reality. You could already want to transfer 3d object files which also have dimensions.
Wojtekhas left
Andrzejhas left
Andrzejhas joined
Link Mauve
larma, the idea about cid: was to be compatible with existing clients, like Movim.
marc0shas left
marc0shas joined
Dele Olajidehas joined
Link Mauve
larma, what about cube map textures?!
Link Mauve
How do you encode each of the six sides?
marc0shas left
marc0shas joined
larma
That's up for future specification 😉
Link Mauve
larma, I made https://github.com/xsf/xeps/pull/1160 and https://github.com/xsf/xeps/pull/1161 fyi.
larma
Does Movim not support http file uris or jingle ibb?
Link Mauve
Not for stickers AIUI.
robertooohas joined
Link Mauve
edhelas, ↑
Wojtekhas joined
xnamedhas joined
larma
So... A sticker is an image file transferred via BoB where an image file transferred via http/jingle is not?✎
larma
So... A sticker is an image file transferred via BoB when an image file transferred via http/jingle is not? ✏
marc0shas left
marc0shas joined
marc0shas left
marc0shas joined
edhelas
Movim stickers are cid:
pjnhas left
marc0shas left
pjnhas joined
marc0shas joined
edhelas
you can always send a link and Movim will resolve it
edhelas
but it's not a sticker "for me", just an image
Dele Olajidehas left
edhelas
I also support SIMS
BASSGODhas left
edhelas
https://xmpp.org/extensions/xep-0385.html
edhelas
but also as an "'attached image"
marc0shas left
marc0shas joined
larma
So the only way to send a sticker to Movim is to send cid via <img> in deprecated XHTML-IM?
adiaholichas left
moparisthebest
> "This problem will go away in the distant future when DNSSEC is more readily available" -- 2011
this is one of the saddest things I've ever read :'(
Link Mauve
Let’s undeprecate XHTML-IM.
larma
Or not use XHTML-IM for stickers?
larma
<sticker xmlns="custom" uri="cid:bla" /> would have worked as well, no?
edhelas
Movim doesn't support XHTML-IM, only the cid: :p
Link Mauve
Re 0446, it’s always been weird to me even back when it was called 0234 to have various metadata about specific file types.
alacerhas left
Link Mauve
Why dimensions and length, and not number of words in the epub, or target hardware for a video game?
Filesystems don’t usually provide this kind of information, so the sender would have to parse the file.
Link Mauve
That is optional, but it still seems like feature creep to me.
edhelas
Link Mauve yup, I don't trust the info :p
Andrzejhas left
BASSGODhas joined
Link Mauve
It’s not about trust or not, it’s about whether or not it makes sense in file metadata.
ti_gj06has joined
larma
Link Mauve, the hashes and values in the example 1 of xep 0449 are actual real values, and apparently I took the file hash as base64 string. You can't use bytes directly because bytes could include 0x1F.
larma
Also regarding dimensions: It's so that you can display a sensible placeholder in correct size before fetching the file
Zash
But why as one complex attribute instead of two simple integer ones?
larma
And length is so that you can display also that for audio and video before fetching the file, it's what most other chat systems do as well
Link Mauve
Oh, with the <!-- ... --> I thought it wasn’t complete.
adiaholichas left
moparisthebest
parse the images they said, it'll be fun easy and safe they said... https://www.kuow.org/stories/we-didn-t-mean-to-ruin-your-mazda-s-stereo
Link Mauve
But then I can only test whether I get the correct result or not, not see where I did something wrong like with XEP-0390.
marc0shas left
larma
Zash, I agree that this would be a sensible option if we only have 2d images/videos in mind (and honestly, that's what we have right now, so probably better to not overengineer here)
Link Mauve
moparisthebest, an image of the system, aka an update, right?
Link Mauve
Not an image with pixels.
marc0shas joined
moparisthebest
Link Mauve, no, literally an image with pixels
Link Mauve
larma, ok, so I have to reencode to base64.
Zash
Wait what?
Andrzejhas joined
APachhas joined
bunghas left
marc0shas left
marc0shas joined
mjk
The image placeholders in GUIs are usually 2D because our screens usually too... But then again, the sender shouldn't dictate how their cube of 3D MIP-mapped images shall be projected on the receiver's sceen
moparisthebest
Link Mauve, more technical article https://www.theregister.com/2022/02/10/mazda_radios_images/
Link Mauve
mjk, skyboxes in video games have been cube maps for about as long as 3D hardware has existed.
mjk
With the above I mean: don't limit metadata to WxH, leave space for extensibility :)
mjk
Link Mauve: Er. Yes. And? :))
larma
Link Mauve, `summary\x1fen\x1fBe cute or be cynical, this little kitten works both ways.\x1ename\x1fen\x1fMarsey the Cat\x1e\x1c👍\x1esha-256\x1f0AdP8lJOWJrugSKOIAqfEKqFatIpG5JBCjjxY253ojQ=\x1f\x1e\x1d😘\x1esha-256\x1fgw+6xdCgOcvCYSKuQNrXH33lV9NMzuDf/s0huByCDsY=\x1f\x1e\x1d\x1c` is the bytes for the sticker pack in example 1 which hash to the hash given in the Example. For reference, the two image files are https://larma.de/xeps/xep-0449-1.png and https://larma.de/xeps/xep-0449-2.png
mjk
I'm well-versed in my skyboxes :p
Link Mauve
Thanks!
rq77has left
Link Mauve
larma, I couldn’t have guessed @xml:lang was "en". :)
Link Mauve
I default to "" if it isn’t set, in xmpp-parsers.
florettahas left
florettahas joined
Zash
My 5D chess videos!
Link Mauve
“Join the resulting octet strings together, ordered from lesser to greater.”, isn’t summary > name here?
Link Mauve
In your example it’s in the other way.
chronosx88has left
chronosx88has joined
jgarthas joined
karoshihas left
marc0shas left
marc0shas joined
վարյաhas left
վարյաhas joined
Rixon 👁🗨has left
homebeachhas left
uhoreghas left
Matthewhas left
Half-Shothas left
Half-Shothas joined
Matthewhas joined
Rixon 👁🗨has joined
uhoreghas joined
homebeachhas joined
wladmishas joined
emushas left
Andrzejhas left
neshtaxmpphas left
neshtaxmpphas joined
Andrzejhas joined
adiaholichas joined
eevvoorhas left
karoshihas joined
me9has joined
Guushas left
gooyahas left
gooyahas joined
reimarhas joined
larma
Meh, yeah, you're right. The field was named desc once and when I renamed it I forgot to reorder that part
guus.der.kinderenhas left
guus.der.kinderenhas joined
stphas left
pjnhas left
pjnhas joined
adiaholichas left
argentumhas joined
Wojtekhas left
adiaholichas joined
adiaholichas left
Menelhas joined
adiaholichas joined
beanhas left
u70jfzo5eyeb468b9ohas left
u70jfzo5eyeb468b9ohas joined
Wojtekhas joined
leochiuhas left
djorzhas joined
վարյաhas left
վարյաhas joined
Link Mauve
larma, fyi you’re also missing a \x1f after the content of the name and summary fields.
djorzhas left
Link Mauve
With this one fix, I’m now compatible with your hash!
վարյաhas left
վարյաhas joined
Kev
This one simple fix to your hash doctors don't want you to know.
debaclehas joined
larma
I remember there was some issue with the hash as well, have to double check my notes from back then
Menelhas left
Link Mauve
Also, the desc should probably take one \x1f after, as this is done for every single other field.
marc0shas left
marc0shas joined
pjnhas left
pjnhas joined
pjnhas left
pjnhas joined
debaclehas left
dwdhas joined
Menelhas joined
Link Mauve
Re section 4.2, I think it would make sense for backwards compatibility to include the image as oob.
pjnhas left
pjnhas joined
djorzhas joined
ralphmbangs gavel
jcbrand
hi
ralphm
0. Welcome
ralphm
Hi! Who do we have?
վարյաhas left
jcbrand
MattJ?
jcbrand
Looks like arc is not here
gooyahas left
adiaholichas left
gooyahas joined
Dele Olajidehas joined
beanhas joined
ralphmunbangs gavel
pjnhas left
pjnhas joined
jgarthas left
վարյաhas joined
stphas joined
adiaholichas joined
gooyahas left
gooyahas joined
pjnhas left
pjnhas joined
archas joined
adiaholichas left
arc
We really need to get ourselves better organized
paulhas left
intosihas left
intosihas joined
dwdhas left
Andrzejhas left
debaclehas joined
govanifyhas left
govanifyhas joined
Link Mauve
The recommendation to use XEP-0363 for hosting the stickers, in section 4.4, is going to crash pretty quickly with real world server configurations, where the ttl of such a file might be just one week.
intosihas left
intosihas joined
Zash
Also remember Daniel mentioning that in the context of avatars
Link Mauve
Thankfully avatars are still mostly served in-band.
Zash
Since you can't put them in http upload because they expire
Link Mauve
Let’s keep it like that then. :D
moparisthebest
s/thankfully/unfortunately/
moparisthebest
Avatars are pretty much the only reason stanza size limits are exceeded
Link Mauve
If someone wants to hammer me with a 1 MiB avatar, I’d rather their connection get closed.
moparisthebest
It's more of an s2s problem
moparisthebest
Like the person in this room who had the massive avatar
Zash
On that topic, can we replace XEP-0153 with micro-images instead? (think blurhash)
Zash
moparisthebest, Link Mauve, with their INFINITE avatar?
Zash
Note for the archives: Link Mauve has an SVG avatar
moparisthebest
That would be fun, unfortunately (for the "fun") most servers have implemented sane stanza size limits by now?
djorzhas left
Zash
Peek at server logs and look for s2s collapses
Link Mauve
My avatar isn’t infinite, it is just the size you want. :)
Link Mauve
Any size you want.
ti_gj06has left
ti_gj06has joined
uhoreghas left
Rixon 👁🗨has left
homebeachhas left
Matthewhas left
Half-Shothas left
Half-Shothas joined
Matthewhas joined
Rixon 👁🗨has joined
uhoreghas joined
homebeachhas joined
marc0shas left
marc0shas joined
ti_gj06has left
ti_gj06has joined
intosihas left
intosihas joined
alacerhas left
jgarthas joined
Andrzejhas joined
moparisthebest
Link Mauve doesn't have an avatar at all for me, or it's infinitely small, I'll never know
Zash
Multi-format/multi-resolution avatars when?
qwestionhas joined
adiaholichas joined
Zash
moparisthebest, you can still have fun if you find someone with even lower stanza size limits than everyone else
Zash
When will I finish that path MTU XEP?
Stevehas left
Zash
Srsly tho, squeeze avatars into the size of a hash and use that instead of a hash of the actual profile image!
restive_monkhas left
moparisthebest
Is that spec/code free?
archas left
archas joined
Zash
Can you send one 8x8 block of JPEG?
Zash
And like, remove the redundant parts
Zash
ie the "this is an 8x8 px JPEG" part
Zash
Someone suggested doing that instead of blurhash previously
Zash
It was larma, https://logs.xmpp.org/xsf/2020-11-22?p=h#2020-11-22-ea01a0735a4bc25e
qwestionhas left
paulhas joined
Zash
or?
archas left
archas joined
Zash
upscaled PNG something something
larma
I'd suggest to go for even smaller, like 3x2 PX. And then you're better of to use a very simple image format (think bmp or the likes)
larma
And yeah, then just upscale them in a blurry way
larma
Would be even better to use image formats that are good in supporting low color depth, because you also don't really need that
Link Mauve
Use a single chunk of BC7, this is 16 bytes, and it is supported by every GPU.
Link Mauve
Using exactly one quarter of the size it would be in RGBA8888.
Stevehas joined
Zash
Maybe take a bit or two to mean "circle, rounded corners, square, ????"
Link Mauve
The downside is that it only supports multiples of 4×4, so 3×2 wouldn’t be any smaller.
Link Mauve
I recently wrote an implementation of BC7 and it was pretty fun.
Link Mauve
(A software implementation.)
Zash
in poezio when?
Link Mauve
:D
Link Mauve
Zash, the Genshin Impact stickers actually come from this decoder. :)
intosihas left
intosihas joined
Link Mauve
Since in the game data they are stored in BC7.
COM8has joined
Link Mauve
PNG often compresses more, these stickers.
Link Mauve
Not for all of them.
Zash
Acquire some Unicode madness and render avatars in group chat views in like 2x3 pixels!
COM8has left
COM8has joined
COM8has left
COM8has joined
me9has left
COM8has left
larma
Actually, I like the idea to use BC7. We just need a mime type for "single bc7 chunk"
COM8has joined
COM8has left
Dele Olajidehas left
Link Mauve
At 8×8, in base64, we have an image of higher quality than blurhash, for the exact same size.
Vidakhas left
mhhas left
mhhas joined
larma
and yeah, it only doing 4x4 is a bit problematic, when you think of images that are rather wide, like 21:9 resolutions
Zash
Profile images are all square so that's not a problem 🙂
Zash
but you're also thinking of previews for file transfers?
larma
yes, mostly thinking about those
Link Mauve
larma, you can always put in the metadata that it actually is 4×3, and the recipient client will crop out the last line of pixels.
Link Mauve
We already have XEP-0264 for that though.
harry837374884has left
adiaholichas left
adiaholichas joined
larma
yes, but those use URIs which either is a BoB cid (requiring sender to be online at time of recipient wanting to fetch the thumbnail) or an external http uri (in which case I can just fetch the real thing and hope that it is encoded in a way that would allow to render early)
larma
It could be a data uri if we agree on a file format for those
Link Mauve
Reminds me to check for AVIF support of embedded thumbnails.
Link Mauve
It was annoyingly not part of the first specification.
intosihas left
intosihas joined
mjk
> Maybe take a bit or two to mean "circle, rounded corners, square, ????"
3D! We also need to think about three-dimensional avatars and how to round them
Zash
"circle, rounded corners, square, you need more bits"
mjk
right
djorzhas joined
Zash
let's just do 1D avatars
MattJ
I've seen discussion of star-shaped avatars for Conversations 3.0
Zash
or nD? how many dimension should you curl up the string of pixels into?
mjk
> let's just do 1D avatars
that's... like... `alt`?
adiaholichas left
adiaholichas joined
emushas joined
mhhas left
adiaholichas left
adiaholichas joined
վարյաhas left
վարյաhas joined
adiaholichas left
dwdhas joined
gooyahas left
gooyahas joined
archas left
archas joined
papatutuwawahas joined
emushas left
Link Mauve
I’ve tried to associate emoji to the various stickers I’ve used today, but it’s pretty hard.
Link Mauve
Is it just me, or is it not fully doable?
Zash
Isn't that the point?
Link Mauve
Sure, but then the <desc/> might not really be usable.
Link Mauve
A proper description (what I’d put in an @alt text) would be better imo.
rafasaurushas left
adiaholichas joined
Link Mauve
larma, for the next version of XEP-0449, it would be very nice to have format agility too.
Link Mauve
Since (as moparisthebest exhibited) not every client supports SVG yet, it would be sensible to provide an AVIF fallback.
Link Mauve
And perhaps even resolution agility, since not everyone needs a 512×512 Marsay the Cat.
Link Mauve
Perhaps using multiple <file/> elements? But then the sources don’t match any longer…
larma
Link Mauve, format agility and not using <desc/> is also on the to do already (was discussed on standards@ IIRC)
adiaholichas left
Link Mauve
Oh.
larma
I just didn't have a lot of time recently (did I mention we have video conferences in Dino :D)
Link Mauve
(Yes! <3)
Link Mauve
There should be a TODO section in experimental XEPs!
Link Mauve
So that we wouldn’t give feedback you already have thought about. :)
archas left
archas joined
rafasaurushas joined
Zash
Aren't ProtoXEPs with TODO sections rejected?
Link Mauve
Are they?
Link Mauve
Make it “future work” then.
emushas joined
millesimushas left
harry837374884has joined
archas left
archas joined
ti_gj06has left
adiaholichas joined
Vidakhas joined
Wojtekhas left
adiaholichas left
millesimushas joined
dwdhas left
robertooohas left
robertooohas joined
moparisthebest
TODO is short for "this will never be done ever" right ?
djorzhas left
adiaholichas joined
archas left
archas joined
djorzhas joined
msavoritiashas left
intosihas left
msavoritiashas joined
intosihas joined
adiaholichas left
archas left
archas joined
florettahas left
florettahas joined
norkkihas joined
norkkihas left
archas left
archas joined
msavoritiashas left
msavoritiashas joined
millesimushas left
adiaholichas joined
ti_gj06has joined
intosihas left
intosihas joined
Rixon 👁🗨has left
homebeachhas left
Matthewhas left
uhoreghas left
Half-Shothas left
Half-Shothas joined
Matthewhas joined
Rixon 👁🗨has joined
uhoreghas joined
homebeachhas joined
adiaholichas left
gooyahas left
intosihas left
intosihas joined
gooyahas joined
gooyahas left
gooyahas joined
ti_gj06has left
archas left
archas joined
xnamedhas left
intosihas left
intosihas joined
marc0shas left
marc0shas joined
archas left
archas joined
sonnyhas left
emus
Kev, would you mind to join the GSoC muc to discuss or give your input on the task discussion? So asking for your GSoC experiences if you want to contribute to the discussion