#social 2017-07-26

2017-07-26 UTC
#
ajordan
saranix: huh?
#
ajordan
I'm guessing in this case Hubzilla can say A and B and silos can only say A? and they're complaining that people think being able to say A is really amazing?
#
saranix
ajordan: pretty much :)
#
ajordan
I have a lot of thoughts on that but I don't want to rant so I'll shut up instead
xmpp-social, timbl and csarven joined the channel
#
jaywink
> seeing just {Object} come across the wire for the first time, as the top level object, is effectively the same as {Create {Object}} <---- so much ++++ about this
#
jaywink
If I got an update for an object I don't have, it would feel logical to process it as a create. All these create/update so on are artificial since it always depends on what the receiver has. It might make sense to show activities someone did to know the verbs, but for distributing content they're meaningless
#
puckipedia
jaywink: well, a S2S update is basically "hey here's that object again, just fyi"
#
jaywink
though, it does matter when you're doing a Delete to say explicitly Delete, so in that respect always specifying the activity would be consistent.
#
puckipedia
the question is: can you Delete an Activity?
#
puckipedia
or should an Activity be always undone / (inverse: create vs delete, add vs remove)
#
jaywink
can you Create a Delete?`;)
#
puckipedia
{"type": ["Delete", "Note"], "object": "toDelete", "content": "woops, violated copyright laws", "actor": "user", "attributedTo": "user"}
#
jaywink
shouldn't the Note be wrapped in a Delete instead? {"type": "Delete", "object": {"type": "Note"}}
#
puckipedia
I mean, this is a Delete and a Note at the same time :P Should you Create it or just post it as is? :P
#
puckipedia
it deletes another note
#
jaywink
that looks confusing to me. sounds like it should be two different "payloads", one for the {delete {note}} and one for the new note {create {note}} - at least I've thought of things as "one activity + one object"
#
puckipedia
hey it's allowed by the spec :P
#
puckipedia
it's a really bad idea but nothing's stopping it from existing
#
jaywink
hmm which part?
#
puckipedia
well, it's got two types
#
puckipedia
which probably shouldn't be mixed in AP objects
#
puckipedia
I also thought of a {"type": ["Create", "Note"], "object": "example.com/obj", "id": "example.com/obj"}
#
puckipedia
(... is this the equivalent of an implicit Create in OStatus? D:)
#
puckipedia
ehm, implicit create in AS1 Atom
#
jaywink
where does AS2 say "type" can be a list?
#
puckipedia
JSON-LD does
#
puckipedia
also it's mentioend in AS2 core, with an extension: "type": ["Place", "gr:Location"],
#
jaywink
that would be very confusing since all the spec examples make type reference just one type. if this is to be supported it should be clarified in the spec that type could be multiple types. but how do you even process that? would be better to enforce that type should be one type?
#
jaywink
" Identifies the Object or Link type. Multiple values may be specified. "
#
jaywink
ok it's a part of AS2 spec itself
#
jaywink
so if you have {create, delete {note, note}} how the hell do you parse that? ;)
#
puckipedia
I assume the type array is a JSON-LD set so it has to be unique
#
jaywink
imagines the fun parser writers are going to have :P
#
puckipedia
I have a magic "first type" which is used for some unique processing
#
jaywink
still, AP could enforce a single type
#
jaywink
to simplify things. simple == adoption
#
puckipedia
but then yo ucan't add extensions :P
#
jaywink
oh hmm, well, good point :D
#
jaywink
goes hide back in his corner
#
puckipedia
jaywink: tbh, it might be possible to say "there may only be one activity type per object", so you can't do Create/Delete, but you can still do Create/Note if you reaally want to
#
jaywink
Kind of annoying for parsing still but *shrugs*
#
cwebber2
moin moin
#
cwebber2
I think Update and Delete make sense as activities sent across the wire btw
#
cwebber2
I just think Create is a PITA
#
puckipedia
cwebber2: well, an Update is for clients to parse too
#
cwebber2
it conveys a lot more information about change
#
cwebber2
call today in a little over an hour, eh?
#
cwebber2
puckipedia: btw I tested your site against the test suite
#
cwebber2
you may have seen from the logs but there's a language issue I have to fix :)
#
cwebber2
not on your end
#
puckipedia
ah, didn't look at the logs
#
cwebber2
though! I can tell you a couple fast things you can fix already from the output I got :)
#
cwebber2
- should be returning 201 instead of 200 on posts to outbox
#
cwebber2
- add a Location header to the response too
#
puckipedia
I had those two :P
#
cwebber2
really?
#
puckipedia
*had*
#
cwebber2
maybe my tests were wrong. at any case, I'll have the actual thing up as soon as I add async support to https :P
#
puckipedia
well, it might've disappeared as a feature
#
cwebber2
I guess that's why test suites are helpful :)
#
cwebber2
add topics?
#
cwebber2
and cya in an hour :)
#
puckipedia
ehm it's kinda segfaulting when compiling :<
#
puckipedia
because curl on debian is too new
#
puckipedia
annoyingly this is a Known Issue
#
cwebber2
wait why do you need curl to compile?
#
puckipedia
libcurl
#
puckipedia
and it's just dotnet that's crashing
#
puckipedia
okay, I think it /should/ be fixed, and /should/ reply with 201
#
puckipedia
IT SEGFAULTED
#
cwebber2
lol did I kill your server?
#
puckipedia
libcrypto
#
puckipedia
exactly when doing the json web key thingy
#
cwebber2
but 201 and Location now passing
#
puckipedia
"The reporter for that one gave information which suggests that their system has both libcrypto.so.1.0.0 and libcrypto.so.1.0.2, and that libcurl uses the latter, we use the former."
#
cwebber2
though a few of them have tests that involve addressing that will probably fail being my fault, not yours
#
cwebber2
and I don't know why the uploadMedia ones didn't run
#
cwebber2
I'll have to look at that
#
puckipedia
maybe if it returns 50X it should probably just mention 'server error' instead of failed?
#
cwebber2
or it could at least say the error code returned
#
cwebber2
sorry for crashin' your stuff puckipedia !
#
puckipedia
well, I'm surprised it worked as far
#
cwebber2
puckipedia: are you trying to run the MS .NET compiler on Debian?
#
cwebber2
seems tricky indeed
#
puckipedia
too new debian
#
cwebber2
(iirc you said you sere using newer things than Mono supported)
#
cwebber2
props for being on Debian though :)
#
puckipedia
yeah, Mono will some time in the future be replaced completely by .NET Core
#
cwebber2
puckipedia: oh really?
#
puckipedia
cwebber2: I ran alpine linux but that doesn't work at all because musl
#
puckipedia
cwebber2: well, .NET Core is now cross-platform in itself
#
puckipedia
okay, maybe Mono won't be completely gone for a while, because Xamarin
#
cwebber2
puckipedia: come to the guix side, we have reproducibility ;) (okay, and fewer packages atm)
#
cwebber2
but you can always roll back a bad upgrade so there's that :)
#
puckipedia
okay I kinda just downgraded curl
#
puckipedia
(it passes something from curl to openssl, or reverse, and that breaks it because libcrypto 1.0.0 is used by .NET and 1.0.2 is used by libcurl)
#
puckipedia
cwebber2: back up and running :P
#
cwebber2
ran it again, did it kill your server? :)
#
puckipedia
it did not
#
puckipedia
it's still running
#
cwebber2
got two new passes now
#
cwebber2
Accepts Uploaded Media in submissions: OK!
#
cwebber2
Responds with status code of 201 Created or 202 Accepted as described in 6.: OK!
#
puckipedia
wonder if I should put a sha256 hash in the url instead
#
cwebber2
I was lazy and used the default pubstrate icon
#
cwebber2
old screenshot but still
#
cwebber2
fun times puckipedia
#
cwebber2
I'm gonna go shower in the meanwhile
#
cwebber2
beep beep
#
cwebber2
time for that call, eh?
#
cwebber2
where'd I put my headphones...
#
cwebber2
dialed in
#
ajordan
cwebber2: heya!
#
cwebber2
ajordan: just you and me, huh? :)
#
ajordan
I heard you say hi but I can't remember what key I bound to push-to-talk
#
ajordan
ironically I am exhausted because I stayed up late doing non-W3C standards stuff
#
puckipedia
oh woops, one sec
#
puckipedia
been doing some school stuffs
#
puckipedia
apparently tudelft@puckipedia.com is a bad recovery email because it contains tudelft
#
ajordan
apparently my push-to-talk key is right Super
#
ajordan
...but I have no right Super
#
ajordan
pulls out another keyboard
#
ajordan
cwebber2: do we actually have any business?
#
ajordan
waves to aaronpk
#
ajordan
cwebber2: wait what?
#
cwebber2
not create ;)
#
ajordan
I thought the test suite was done except for the language hacking you had to do lol
#
ajordan
lol thanks all
#
ajordan
goes back to bed for a bit :-)
tantek joined the channel
#
tantek
good morning #social
#
tantek
did we skip CG telcon today?
#
tantek
sees 0 people on the mumble
#
puckipedia
tantek: we did
#
tantek
cool cool. back to other things. enjoy your Wednesday!
#
aaronpk
we met for 5 minutes and decided there wasn't anything we neededf to talk about :)
#
xmpp-social
[ajordan] I'm really happy we did honestly
#
xmpp-social
[ajordan] I felt like a vegetable
timbl and ajordan joined the channel