Hey David Good and How do you pronounce is it Denny's? Yes, it's just Dennis then Dennis. Okay, and what company you from? From Oracle Oracle. Okay, cool. Just wanted to get you in the attendance. Thank you. All right, Rachel Rachel are you there and someone named Theo just joined are you actually there? Could be the challenges of getting the unmute button to work too It could be Theo or Rachel you guys there Rachel. Are you there now? Oh? Yeah, sorry, I had the volume done. I couldn't hear you. Okay, not problem. Just want to make sure you for the attendance. Thank you Oops Anything on the right page and Theo are you able to talk yet? Okay, still no work from Theo. Whoever that may be I Don't think we've had a Theo yet on the ball Hey Lee And mr. Daniel Then you thought I don't please Hey, don't get into that yet and William are you there? William Robben are you there? Good morning. Glad to be here. Good morning Let's see who I'm missing. I'm sorry. Who's that? Oh, hey, hey William. Okay, and hey Chad. I see ya. That's good Let's see who else can I hey? I Thomas yes, whoops, sorry too many people typing in one spot. I'll back off Chad Thomas yeah, I heard you right? Yep What about baron baron you there? Yep, catch you now and what about stevo stevo you're there. What about Joe Sherman? David Lyle you there. Yes. I'm here. Yeah, excellent Let's see who else I can pick on you're on you there. Yes, I'm here. Excellent And let's see class see there. Yes, I'm here. Excellent idea Actually if you guys want you got to just speak up and say your name as you join Sarah's here. Hey, Sarah. I Added myself. I'm not sure it's funky yet. I got it. Thank you. Let's see. Who else can I? Hello Hi, who's that? Sorry, there's a lot of background noise. I couldn't hear Oh, so look at it. Thank you. We have Alex on the call Yeah, we got Alex debris from servosank here servosank. Thank you From Paulie hey Kathy Hi Kathy got you and marky there. Yep Or it to you there Thank you, and what about stevo? Yep, gotcha. Thank you Do we have Theo yet actually the field to vanish I think Theo vanished Hmm Okay, I don't know who that one was All right, give you another 30 seconds or so is there anybody on the call who is not in the attendee list Let me paste the Agenda into the chat again case you don't have it Is there anybody on the list who does not have an asterisk next to their name? I think I got everybody so far Oh, Joe Sherman. Are you there? Yes, I'm here. Excellent. Thank you Chad already got you There's we don't miss it Austin don't have you yet. Mr. Austin. Are you on the call? Austin, I'm here. There you are. I figured you'd be there. All right. Tell you what, why don't we go ahead and get started? Chris and a check you there. Yes. Thank you. Don't sound so excited. Okay All right, why don't we go ahead and get started kind of full agenda here. So first up Just a little bit of warning. We may actually do a a vote for the very first time and This is a very important issue. So I want to draw people's attention to it and Scroll down a little Austin asked through the slack channel should our official domain name be cloud events org or cloud events that IO now This is obviously critical importance to us. So we're gonna have to take a vote on this later Now the reason I'm mentioning this now though is because each company's only gonna get it one vote And so you guys need to discuss among yourselves, which how your particular company is gonna vote So I figured you probably need most of the call to decide that because it's so important But we both probably taking a vote later on now Keep in mind if for some reason you guys think it's unfair to spring this on you and you want to wait another week You can mention that it's part of it and we'll defer it But if no one really objects, we're gonna do a vote later So just think about that as we go through the rest of the call for those of us That didn't see the slack channel. Is there a pros and cons for one or the other? We're gonna get to that later I don't want to say the rattle for later. Okay. All right, cool But I just wanted more people to start talking about it All right action items are not gonna go through these just as a reminder There's Austin since you have some out there. The only thing I do want to ask is did it you transfer the domain? ownership to CNCF already The email is Drafted I've got authorization codes for for both domains I'm just waiting on this last issue of what domain is actually gonna be our primary domain So as soon as I could as soon as we get clarity there. I you know emails drafted I'm gonna send it over to Eric on we've been chatting with at the LF who's gonna handle this All right. Okay, cool. So it's almost done. All right. Thank you And then just remind you you had two other outstanding ones that are in the backlog All right White paper status the final review of the documents and the PR material is currently underway We are hoping to get it done in time for the serverless conference in Paris. I believe that's next week So hopefully I'll be wrapped up really soon Are we good? and Let's go ahead and then jump into PR review. I tried to order these based upon. Hopefully the easy ones first But on a window To do href checker. So this one Just updated the href checker because Sarah actually included a title in one of her Links inside a markdown document and the tool did not support that. So I just changed it to actually support it Totally non controversial doesn't obviously impact the spec. It's just checking things to make sure our hrefs aren't broken We make sure we don't get 404 is that kind of stuff While in there, I also I needed to change the way the verify phrases work So this is the this is the tool that checks up on lowercase RFC keywords And really the issue here was that said on a Mac works differently than said on Linux So I had to change the way said works in both tools Very straightforward though just modifies the tools does not modify any of the documents whatsoever Is there any questions on that or are there any questions on that? All right, any objections to approving that one So I just say that like I would suggest that I just test it locally so that you have another human who tests it and provided it If people approve it Just let you know I did test it on both Mac and Linux Thank you so much for doing that by the way. Yep So obviously if there are other issues people find later on Feel free to let me know or just open an issue and I'll get a fix But as I right now I do believe it works in both worlds So any objection to accepting that one? Cool. All right next one Okay, very quick little minor typo The word to was duplicated there I'm hoping no one objects to removing the second two Any objections to that one? Okay, so quick question for you guys for issues like this or peers like this that are so blindingly obvious Is there any objection to Me or one of the admins waiting a day or two to make sure there isn't something never missing But if it's something as obvious as this that we have merged it or do you guys want to follow the process explicitly and wait until this Thursday phone call? I'd like I'd like us to be able to just take care of that Okay, okay. Is there any objection to the blindingly obvious ones like that being merged? Okay If obviously we still It may be I can't remember for sure, but I just wanted to double check with you guys before I took the liberties so Do you still expect to get a couple of LGTMs before it gets merged I would actually really like that if you guys could that way just to double check for my sanity sake So I that's why I want to wait at least a day or two. Yes, so if you guys can LGTM those to be wonderful. Thank you Yeah, I think that like I've run open source projects where at least one other person in the community has to plus one or LGTM Something that for that nothing gets merged With only one eyes on it. Okay, that's fine. We'll wait till we get one more. I have no problem with that All right, excellent All right, this was as a result of last week's phone call there was a request to actually add some of that Get help so we ran through on the call into the Contributing doc itself here. I just removed some trailing spaces the bulk of the actual text is right here. That just says Make sure you sign it and to make sure that this line and that line actually match because I believe that's what the DCO checkers verifying We're looking for Any questions on this one. All right, any objection to approving this one Approved. All right not hearing any objections All right Next one All right Mark Did you want to talk to this one or is he on the call? He may not be on the call. All right, so this one I say I'm sorry. This is William, isn't it? Yep Did you want to talk to this one? I think it's pretty straightforward That was a comment that I believe Sarah made in the last call about making sure we document ways for people to assign work That's pretty much it. Okay. Yeah Basically, just made it make a comment in the issue and we'll assign it to you Any questions on this one? I have a question. So here is a maintainer. Well, then I think a sample able So who is a maintainer? Is it you doc? As of right now? It's me. I think Christina check can also do it I'm not sure who else is a maintainer or owner to be perfectly honest But either right now I've been taken on the action to do that. I'm also one dog if you need me that. Oh, there you go Okay. Oh, I'm sorry. Was that Ken? Yep. Oh, wow My my conflicted meeting got canceled. Hey, welcome to the group It's good to be it's good to be back in the meeting. Sorry. All right. Yeah, and Doug I think I can merge as well. This is Mark. Okay, cool all right Okay, back to the grind. Um, is there any Objection to this one. All right, not hearing any Let me mark that approved All right, that's communication info to our read me Okay, this one. What did I do here? I remove trailing spaces just added some information to our read me about our email list our slack channel Our meeting times for the most part of this was just a copy and paste from the main working groups read me So there shouldn't be anything They should be surprises in here basically and then of course a link to our meeting minutes Like I said just from our original read me Any questions on this one? All right. Any objection to adopting this one? All right, cool Sorry, I was on mute. I don't object to adopting it because I think it's a net positive but I think we should be a little careful because There's some confusion in January about when the meetings were because things got out of think so then is there any changes to this We should think about refactoring it so that it's in one place But I think it's like it's great to have documented Yeah, okay. Yeah, well, I'll think about whether it's possible to have things in one spot It's gonna be a little hard because we had at least two different read me's at play, but I'll think about it Yep. All right next one Issue I'm sorry PR 49 which was for issue 6 Um So as you want to talk to the changes in this one So us Yes, I can go ahead It's it's very simple or it was confusing or the words message event and notification They used in a way. They were not introduced before they were used for the first time assuming that people didn't know the meaning of those so Just change the body Okay, any questions on this one I Thought elsewhere. It said that it current that occurrences were uniquely identified So that's inconsistent with other docs, I think but it doesn't change the content here So I think that's making I don't know if somebody has an opinion on that Content yes It just the area and just think so that's clear what is meant by message what is meant by notification what is meant by even I Think someone else was trying to speak in there too besides Sarah. What was it trying to speak? That was me Thomas I I Don't know if I missed one of the meetings where this was clarified But I know that's just been an open item where we talked about for example like minimum entropy or globally you think is for an event I know it's been discussed several times. I'm not aware of any time we actually Resolved that must be globally unique So it all think then this doesn't change the meaning. It's just Emphasizing the May which I think is correct given our use of the standard So and I do think that this is a clarification and then we can sort of separately talk about whether Events are globally unique Right. I was gonna say that it's an open question Yeah, it's gonna say this text doesn't talk about uniqueness one way or the other So I don't think it changes that then people can still open up here is to address that issue well, I mean, I think that it's highlighting that the may is all caps and That you know, like I think it is a clarification of as currently written and doesn't change the semantics It just formalizes them in a way that you know, I think is it clarifies that there is an issue there or not Ah, you're right. I'm sorry. I missed that. Okay. You're right So I think it is correct to capitalize it because given the semantics of the RFC But I think that you know, I'll look through the issues and I'll open an issue if we Want to make that record, right? And the other comments are separate. Okay. Any other comments or questions on this one? Looks good to me any objection to this one Injection to adopting I should say all right not hearing any objection we prove it Next one Actually, I have a question for the previous item. Yep. So so this is a clarification, but I think one point is the event Not yet here. So the event is uniquely Each each occurrence may be uniquely identified with data in the event Could be also identified by the context, right? because we Not just because here they mentioned, you know, it include context and data I remember some some other I read some other places is that is that, you know, it can be identified with Context to because the unique identifier we, you know, different different manufacturer, I mean event sources it put the Identifier into maybe something to the context and data sometimes into the data William, did you want to talk to that? We should have another another issue to address that to track that or we We should modify here We'll discuss here Well, I think that this is exactly the point that I was or it's related to the point I was bringing up I think that since since the edit doesn't change the meaning I propose we accept this and then Whoever wants to can like open up an issue about the uniqueness question Like I need to reread the specter Really think about where uniqueness is mentioned to propose something specific and you know somebody else work I think any of us can propose that we clarify the uniqueness question Yeah, are you okay with that Kathy? Yeah, I'm fine. I think I'm going to pose that issue Okay. Yep, that sounds good. And obviously that's true for anything we we approve You know people got a problem PR is to help clarify things that they think it's needed Yeah, thanks. All right, so moving forward then Is this right 148? Yeah, make this can we raise about data? Okay. Yeah, so this one's mine So this one just made it try to make it clear that what is it event type? event type version and schema URL are all related to the information within the data property And that's basically it that's why you can see all the highlighted text just focuses on Basically putting quotes around data and stuff like that and that we're adding word data where we're appropriate Any questions on that or comments thumbs up? All right any objection to adopting that? All right, cool. I haven't I haven't had a chance to internalize it I'm not gonna block it but one thing I'd like to request is if like in advance of the meeting we can tag the things that are likely to Be talked about because I'm having trouble keeping up with all the things that are so if you look at the agenda Yeah, if you look at the agenda doc as soon as I start getting the sense that in at a PR is settled down I add it to the agenda. So the agenda things like this have been on the agenda for several days in advance Okay, yeah, I try to remember to send out a note But sometimes I just forget to get busy But the agenda doc will always have the list of PR's I think are ready to go at least a couple days in advance Okay, then I'll start from there when I'm looking at things. Okay. Yep. Sorry. I should have mentioned that before Hey, Doug, did we put the agenda doc in that PR that adds the meeting information to the main read me? I believe so, but let me just double check. You did I checked this morning. Okay. Appreciate it very much. Thank you Yeah, it is there. Thank you All right Where are we at context of battery? I think that's the next way to read me Sorry, I think I missed one over 30 What did I do here? Okay, I think I just made some updates to our read me just add pointers to Wait, we thought we're repos this. Okay. So this is in the main working group repo itself This is not in the cloud events read me just be perfectly clear which repo we're talking about here So what I did here is I added some links to our white papers because and our serverless landscape spreadsheet because apparently they were missing I then Added some more pointers to our cloud eventing work Talked about a I'm sorry provided a pointer to our proposals directory where I then later on Have a read me that talks about how to add ideas for future work items right and talk about how to submit a new proposal by adding something to the proposals directory and then Adding it to our agenda doc so we can talk about the next meeting if you think it's ready to be discussed And then I added a comment here that said basically if the proposal extends the scope of what the TOC has already agreed to that We work on that that we're probably gonna have to take this back up to the TOC for review and approval Just as a sort of a foreshadowing of the process people are going to go through and then down here We have the list we have events as something that's already underway But that's basically it it's just adding more information to our main working groups repo You know about our process and what we're doing any questions on that Doug is there a way to add like a calendar object a calendar object like when you click an answer of downloads into your Outlook I don't know I Honestly every time I try to go to the Google calendar and try to do a download of it Have a single event that never seems to work for me. So I may need some help on that one But if someone could figure that out, I'd love a PR to do that So that's a dog for the future work items. I remember there's a Google doc that you know people add You know you Yes, I was gonna be here. I was gonna propose that we actually remove that Because I prefer for us to track it in a more structured way using PRs so I later on I was gonna suggest that we actually remove this and Have you put this into a PR in the proposals directory? Oh? Okay, so maybe we should you know remove this link otherwise. Yes, I was gonna do that once we accepted it But I didn't want to do it until then and that way people can actually have a back-and-forth conversation about your proposal Because this Google doc really isn't the best spot to have the back-and-forth conversation All right any other comments on this one all right any objection to adopting it all right All right add content type attribute who was this one You're on this one is yours. I'll talk to it Yes, so basically The data is not really defined if it's like a JSON or a text or any other Serialization format and what we discussed originally in the original proposals was to have a content type pretty much like an HTTP That will define the serialization method of the data object Yeah, so you added that and then just to drop those attention to it down in the data section He added this if statement with a must down there. I'll make sure everybody sees that as well So I think there was some debate about whether that like we should encode things twice right? so we're going to have to take all of these attributes and figure out how they're encoded for specific protocols and Without the context of how we're going to do the metadata encoding have a another attribute that does the content encoding Seems unexpected I think those are different things. I think the metadata or the context encoding needs to sort of be protocol implementation and While the data encoding is you're already defined here sort of arbitrary payload They need to define some that's going to consume it how he's going to consume it So maybe we need sound sound Down the road to say, you know, if you're gonna send a message over 80 HTTP So both sides will be able to intercept that you need to define how they're serializing the context or over AMG or MQTT etc But the point is that in an API object, you're not supposed to Understand how those things arrived because you're defining them as a string So you don't need to decipher it if you're saying, okay, I'm gonna map this definition to an API It's very easy to define that for example, you had there like schema is a string I know how to decipher it, but data. There's not nothing that tells me how the data is organized So I guess my question is is I'm reluctant to create a specification where any event producer can say Oh, this isn't J. So this is an XML. This is in, you know All these different formats and then every parser then every Consumer of those events needs to support a huge range of different format that in a maybe we should consider that there's some More detail on that that prevents just wall of different format I'm also a little bit cautious. I it's never been entirely clear to me whether we are defining Logical types memory types or transport types and you know, for example with the firebase SDK for cloud function We have non serializable types that we actually expose the developers So we have like we take underlying JSON and construct actual objects that are native to whatever SDK Which it seems like with a content type would would disallow At least if we're talking about in-memory objects because it's no longer JSON It's actually for example a JavaScript object that has actions on it right again, you need to look at it from a different perspective there is a You know eventually those event events need to be produced and consumed by different entities You know one would be let's say a serverless function The other one would be someone generating an event that an S3 bucket was created. Okay For those two entities to communicate we need to agree how they transfer the the message So you can go in within the function and define that you're going to deserialize it because you assume that someone serialized it in JSON for example But there are many cases where JSON is not the right solution serialize Absolutely, and so to clarify I mean I'm in favor of actually being explicit about what the transfer encoding is or that the Coding of the object in the transport method, but I don't know that it necessarily I Think that that's a property of it when it's on the wire not necessarily when it's in memory And it's not clear which the spec is talking about There have been a number of conversations about the difference between an event and a message And I wonder perhaps content type is more appropriate on the message than the event That that depends if we're saying that the API that will create for every language is essentially going to do the deserialization If you're saying that you know for the Python go Java etc API definitions, it's essentially a language dependent object, which is already deserialized Then you don't need the content type if we're saying okay, I'm going to leave it to the Application to decide if he wants to deserialize or the server the serialized portions of the event, etc Then you would need some way to decide on that Or potentially in the API object you could even define two ways to consume the event one is sort of a row And one which is a sort of deserialized So I think someone earlier asked the question of all these various types that we're talking about are they Are they describing how it appears on the wire versus in memory? and it's always been my assumption that I Think anyway that all these things apply to what's in memory in terms of what would say an application See if it was to access some of these properties. Is that different than what other people were thinking? I mean Yeah, I mean content type We intend to do routing based on pools and that's assumed any content type routing or Would be done on the product at the protocol level that That basically everything inside the bottom message would just be the the event and the data that the already determined Runtime would use the object. That's been our assumption for a long time Yeah, so yeah, my my assumption is was that we were discussing things that would be Yeah, eventually they would be runtime, but they could also be transmitted over a wire protocol And my assumption is fairly similar. This is that this is the logical type which will translate very cleanly to a in memory type But we will then probably need to once the stabilizers go to the HDP spec Which means that's like we might unroll certain nested fields or say extensions are x-dash In which case the content type will actually just fall out naturally because content type is already will recognize each to be better I completely agree with that approach I mean we should not as the earlier person said we should not duplicate function that we expect be putting in at a higher level and protocol Go ahead Angular app which builds a cloud event in memory and now it wants to use an HTTP API Transmit the event. It needs to work out how the event is going to be Syrized on wire what content type is going to use. So is this field telling me that if you're using HTTP transport then This is where do you read the content type from and this is where you should go eventually in the HTTP header Or if you're using a different transport then This is where do you read from and this is the field which you go in for that transport target transport Yeah, I mean this is the final decision about what we're modeling here And we need to we need to we need to formally describe that this is our approach and this is our policy these things go in the protocol That was not clear to me and I made a lot of comments on that My head around it even now in logical representation transport your presentation and why the presentation so if you get some terminology around this I think it will help us Figure out what we're doing Yeah, I think my my old assumption around this effort is that we we want to be able to transfer Events between one system to another system and if we want to do that we also have to define how two independent systems work I Mean a sort of interoperable messaging scheme Even if that message scheme will run a drop different Transport, you know, it can actually you know work of or a Kafka and then be routed into Kinesis You're going into let's say an Amazon Infrastructure that's okay. You don't want to deserialize and serialize every time you're moving at home So we need a definition of how the payload is encoded Original discussion some people suggested Jason as the way to do it and you know, obviously there are areas where Jason is there not the property But you're on isn't it true that How the message is encoded But isn't it true that that this content type is about how the data properties or how the data field that self is encoded Which for example Maybe in Jason and so the content type here would say you know application Jason or whatever it's supposed to be But then when we actually transmit on the wire that could be something radically different like say XML or something like that Right, I mean there are two different content types at play here. And this one here is just about how the data itself looks, right? Right. We want to break two specs one for the message and one for the API Well, I think how we how it gets transmitted is has not been discussed yet as part of the spec I that's why I assumed content type here was just about how this field called data is encoded I was thinking how it starts meet it. Should it be part of the spec or it should be outside the spec If it's outside the spec then why do we need a spec, you know Spec is where you want to have two ends of a wire talking to each other in an interoperable fashion I think that's a larger scope than any of us are ready to tackle though I mean I've never seen that really work out to this is the one and only way everything communicates it up at a protocol and Transport layer. No, but again, we have schema URL. So why do we need a schema URL? It's the same. I think it's the same reasoning you want to scheme a URL because you want someone to be able to interpret the message You want to interpret the data content I'm going to get all the fields already decoded. Why do I need a schema URL? That schema URL is not for the envelope. It's for the thing that's in the data payload though, right? Right, but you're saying that eventually it's going to be Deserialized okay in the API You're gonna get things already, you know as language objects. Why do you need a schema? You're assuming that the schema is required for the thing that the serializes in order to form and a language objects It contains a field called foo and you know, whatever If if you're already Deserializing and you're saying the schema URL is required by the guy that this serializes To create the relevant Application objects, you know relevant language objects that have the right fields and do validation on those etc Then that's also outside the scope But when we put the two types in here Aren't we opening ourselves to the fact that this envelope could be in JSON and then the body could be something else like Protobuf or something and like how's the JSON serializer gonna deal with that? It's just I don't I don't think our intent I don't think our intent is to do the full end to end It's to just do the the data representation of the event itself, right? I agree with you That's why it's divided into two sections. One is the context We're not saying how the schema URL which is a string how it's transferred over the protocol But we are saying that the event itself which have very different schemas Is decoded because for the context we don't need a schema We essentially get defined here already how we sort of what are the fields and if they're mandatory or optional so we don't need a schema for the Context field that we've defined in this document We don't need the serialization mechanism because we defined that there are string or other values or URLs, etc But for the content within the data, we need a way to decipher it And if we define that we need the schema URL to decipher it We also need to understand the encoding of that package so I think you're on is bringing up some really good points about transport and We need to I think what what has been discussed earlier is that or at some point was that We have the semantics of the attributes which applied to Where there's the context and the metadata attributes are Um, so one concern which is What are things that are true for all of them, right? And then the data is specific to a specific source that is generating a specific event type and so Um What this is illustrating is that like schema is not defined like what does that mean really and you know, I think that Um, we need to address that You know, I was thinking maybe that's um the semantics of the attributes. So What I would suggest is that we pull out this conversation into Like a transport question transport encoding question, right? How are these events transported? And you know related to that is your own point on then You know after transport and routing and all those things How how how does it has this interpreted by a runtime? and so I think this is a broader question that we need to Address that contact in order to have this conversation productively But isn't part of the reason for this uh pr that The transport and the content encoding of the transport can be different from The content encoding of the data that the the envelope says, you know, the htdp headers or whatever They're saying this is the the entire event and within that event. There are other objects This is saying, okay here is this data object. That's how this one is serialized, which might be different I think two open questions one is around the semantics of You know attributes or whatever that is in the data The other is how it's encoding and I think there are different people who make it Making assumptions about oh metadata, of course that will be htd attributes and data, of course That will be htp post body or something but that's like A bunch of things that We haven't finalized So it seems to me we have two different conversations going on here, right? We have how do you specify the encoding of the data attribute? And then we have entire transport level encoding question My understanding you're on correct or wrong here that this pr is just about the encoding of the data attribute alone and I'd like to focus the discussion on that and then have someone volunteer to take the issue or take the The next step to open up an issue or pr to discuss possible transport level discussions Right, but I think that we I like I'm I can't like I accept this without the context of like Does this invite two layers of encoding? I I agree because especially that opens the door to some that might not be compatible I think if again if you won't have a content that be fine Then you need to define a strict content type if you want it to be into our purple So I totally agree it needs to be defined, but many things need to be defined and I can't decide on this without knowing the other thing So why do we need a schema URL? Well for one it's optional They're exactly the same category I I understand To make the the thing that I'm trying to avoid so A lot of us are worrying about for example, uh, htp encoding Which I think we have some intuition and is why we just assume that all these other attributes in the context are No, off there is no encoding, but with something like pub sub for example We might actually wrap an entire envelope in as a message as a pub sub message in which case The content type and the data could either be required to have the same encoding or they could allow double encoding And I think that without actually like this is a hugely important discussion That we need to get to a prerequisite of first like we need to be able to say okay Do we allow double encoding in situations where we're actually doing the envelope or not because Like that's my main my main concern is it's not clear yet until we cover transport whether content types should be applying to data applying the whole envelope or Like does it depend on the transport? I'll give you another challenge if that's what you're planning. Let's assume someone wants to sign the data Portion because the metadata doesn't necessarily have to be signed because it may be generated by Transport or intermediate routers, etc. Let's assume. I want to sign the data If you're if we're going to change the content type across the hops I have an iot sensor that generated a binary message through mqtt and I want to transfer it to pub sub Okay, if you're going to convert it to json, you're going to violate the signature that potentially is built Okay, so let me let me do this. It sounds like we're not going to be able to resolve this today What I would like to do is take this conversation back to the pr itself and everybody that has concerns Please add comments and we could have the discussion in there um I don't think we're going to come to resolution here. So I think people need to go over and think about it and I'd also encourage you to think about ways to split this up Because I'd rather not have a PR that tries to necessarily solve everything at once, but if we can do smaller steps I think they'd be much appreciated would it make Would it make sense to start having these transport or protocol specs or examples Being written up alongside this main specification. It sounds like we need to work through those examples to get a chief clarity here That may be good I would actually recommend though that we first decide on what is the scope of these properties at all Because I think what I'm hearing this call is some people thought that they applied to the transport layer And other people thought no they applied just to basically what's in memory and going to be able to run time And so I think there's a little a level of disconnect there So it'd be useful if someone volunteered to take an issue or pr or something to help try to resolve Exactly what the scope is and maybe it's both and we just need to separate the discussions But we need to get come to agreement on what we're trying to solve here Maybe just the suggestion is to split it and say, okay These are the transport or the message elements and those are the apis I think we had this suggestion in the past Maybe The apis will actually be language specific because our type languages untyped languages So would someone like to volunteer to open an issue to to how to force that discussion about what is the exact scope of the Stuff we're talking to me So can can we everyone everyone who's commented on the call to comment on the pr as well first? and then from there we Decide what we do next Yeah, I agree with that. It would help to make sure everyone's concerns are captured. Yep, great Okay, and before we move on I'd like to remind people that Please don't wait for these phone calls to raise those concerns um, I would prefer not to Raise what I would call pretty fundamental concerns about the pr only during these calls itself And this this pr has been out there pretty much in its current state for several days now So please try to review these things in advance to call that way we can have those discussions Um as best we can offline all right So with that let's move to the next topic cloudevents.org or cloudevents.io And okay, so in order to avoid a potential rat hole what I would like to do is is Give each company each one person from each company The opportunity to speak in favor of one or the other only once And then we're going to do a vote I'm going to use the attendance tracker to do a vote. So only people who've been three out of the four times can vote um, if someone votes that they would like another week, I'm going to Uh, accept that Um, because this this this they kind of spring up on people. So if you'll want another week, that's fine But let's let's go through that process because I don't want to rattle on this too much Um, so is there anybody on the call from a particular company? Who wants to speak in favor of one or the other cloudevents.io versus cloudevents.org? Okay Not hearing any I'm going to go through the checklist of people on the call who have voting rights So I'd like to hear any discussion of pros and cons Well, that's what I'm asking for. I can see arguments for both Yeah, I put in the um, I put in that sentence there, right? So we are in my mind I think I was actually there's a lot of companies or other domains that use that IO that it's not appropriate for But I think here it actually makes great sense because we're talking about events inputs and outputs So, yeah, I'd like to hear if there are any arguments against and if not, then we can consider unanimous Because like um, because we had to check our, you know There's things for there's arguments for both, but we're not okay. I'm not okay Is there somebody who would like to speak who has not spoken already who would like to speak in favor of one or the other? So I don't have anything against IO, but I'll just uh indicates traditionally it has been used for things that are open So this is an open source initiative. So All looks more suited Okay, anybody else who has not spoken yet who would like to stay in the opinion? I agree with the last comment I'm sorry go ahead William I'm just gonna say I agree with IO as well make more sense. Okay Okay, can you say why it makes more sense or are you just confirming what it says there? I I agree with the points that were made about being about IO itself simply output plot events and uh, yeah Pretty much it Doug the last two comments were they for 4.io or 4.io or I thought they were about IO I think William was for IO and I couldn't hear the one I don't remember I think I think it was Suhas was for Dot org. I think I think that was who was speaking Yep Okay, right Okay, so Please if you've already spoken hold you hold your hold your tongue Anybody else care to say something? I mean I have a weak Thought that just IO is hip right now. It might become dated later. I mean IO Okay Last time I looked a a couple months ago. IO is not a primary tld and so there are issues with that Um, and so we chose to go the dot org instead of the dot IO because of that reason Okay, anybody else who has not spoken yet would like to say something I agree with both the comments about um It's sounding more open and and that It's it's more traditional for the standard groups Okay, anybody else who has not spoken yet Yeah, I like the I the org. Sorry. I like the org I think you know if IO if says it's just input output. I think we're a little bit too restricting The future we might It's tender scope Okay, anybody else who has not spoken yet Hey, this is Chad. I'm obviously a big believer in IO given that we're iron IO but uh, it's It does tend to be more startup be Cooler company Whereas org tends to be more open and it's more traditional and if we want this to be widely applied it might be Sort of have a weekly held opinion that dot org might be more relevant or appropriate Okay Yeah, this is Lee. I resonate that that last part of what um chad was saying is that it's It I don't know how likely it is, but it's possible that folks might confuse it with some kind of a company slash entity um So, okay Anybody else who has not spoken yet? Okay, let me ask the higher level question first. Is there any objection to taking a vote at this time? Okay, we're gonna do it then Uh, suhas, what's your vote suhas you there? I'm sorry. Yeah, I'm here. It's funny. Uh, my work is org dot org. Okay Kathy, what is your vote org? Okay, actually let me just make sure I didn't miss someone up top. Okay Oh, sorry, um, IDM Sorry, Dan based on what we saw in the internal chat dot org Um, you're on what's your vote org org? Um, David Lyle Intel David Lyle used to there Okay, we'll come back to David in a sec Uh, William, what's red hats vote? IO IO um Klaus SAP org org Oh gosh Austin No strong preference actually, but I think that there's some interest on our team Austin I need an org or or I need org IO or abstain IO Okay Uh, Lee I'll uh, I'm toss my hat into the org ring. Okay David Lyle David Lyle votes for org Thank you Okay, thank you Um Edith are you there? David, I'm sorry David Baldwin David Okay, now mark. How do you guys work with the mware org? Or okay. Did is there anybody on the call that I missed? Who does we didn't get a chance to vote? Google Oh, wait, where is Google? How do I miss you guys? That's why Who's actually who okay, let me ask you right now. Who's the alternate for Google because we don't have an alternate listed So, um, Sarah is the primary and Rachel is the backup. Oh, I okay. That's okay. I'll fix that Hold on a sec Okay, in that case, you guys still don't have voting rights So we'll fix all here except that we've attended the last three meetings, but well So Okay, you're right. I'm sorry. Yeah, I have to move up the yeses. Okay. So you guys can vote. Yes. Go ahead. Sorry I my spreadsheet's all funky then you want org or IO or org. Okay. I think based upon that Orgs wins it So that's what we're going to go with and you have your answer Thank you guys Okay, great. And the dot IO domain We'll just forward over to dot org then I guess So Doug Yes Can I ask a quick question? So just trying to understand how Moving forward this work. So for every standard Uh, the serverless working group Besides to work on and establish we'll have but different org Behind that standard and a different website for that standard as well like That is yet to be determined that may very well the way that may very well go the They're very far away. Not very well may be the way we go, but that is yet to be determined I think the point that the events are broader than the serverless In that spirit makes sense Yes, I think once we start getting some other proposals for some other things for the serverless working group to consider And we could kind of see those things taking form. We could have a broader conversation about how these things can be maybe lumped together Or if that's the right approach Okay Now, uh, technically what's like five to the top of the hour. I don't really have time to deep dive into anything else So let me do two things one Final real call, um, lily. Are you on the call? From wall way And Dan rosenova Yeah, I'm here. Okay. And what about dan barker? I'm here Okay, is there anybody on the call who I did not add to the attendee list and mark your name with an asterix to acknowledge I heard you Okay, are there any other quick topics that anybody would like to bring up? Very very short topic Quick short topic is the website right now. It's just a square space posted website. I think we could keep going Using that for like a month or two until we maybe roll our own solution But I don't know if anyone has any other thoughts about that Any comments on that? Okay, I'm not hearing any Okay, we'll just keep keep going with that and we'll mostly point to the github repo So I think that should be the center of all of our activity So I also just want to highlight for our request for like input Austin I got together last week and sort of came up with an alternate roadmap for milestones Because like we already haven't hit january in a current roadmap And so if people could just chime in there's a google doc there I'm not wed to whatever it is. It's just trying to provide some structure that's more based on named milestones rather than um dates All right, and just to confirm Sarah Rachel you said that you want Sarah to be the primary and Rachel to be the alternate. Is that correct? Yeah, I did that. I told somebody about a slack and didn't Check off on this. Okay. That's fine. Just want to double check because I go back and change it. Okay In that case, I believe we're done for the day. Thank you guys One more thing that good Is crystal on percentage In the snap channel there was a um talk about uh, I'll kind of catch all landing page as serverless.cncf.io I didn't know that was a that's apparently he's going to redirect that to a new group called serverless dash landscape, which is where the white paper and the The competitive landscape would be I don't know what's kind of the the canonical for our own group here But um, I guess we'll follow that up in chat any slack interesting Okay, cool All right, any other last minute comments All right, so just a quick reminder, please everybody review the prs and advance the meeting Especially the ones that may be Is a controversial or require more deep thoughts so we can try to get as many of those resolved offline as possible All right, in that case, I'll talk again next week. Thanks guys. Bye. Thank you Thank you. Bye


Yesterday I was having serious problems fixing that damn bug I talked about, if you haven't seen the video go watch it, but after a while, well I'll tell you what happened, I spent another hour trying to fix it and I gave up, like honestly there was no possible solution and I even like got even stranger outputs at a certain point, the placeholder element was actually smaller than the area that it was occupying, somehow I don't even know what was going on, so I gave up. I went to the visual design KD chat and said okay people I'm going to delete the whole panels code and I'm going to write it from scratch because I can't stand it and after a while there's this person that pop up and said what was your problem again and I explained and I vented all the issues that I had and at a certain point they were like you're using width and height in a grid layout you should be using implicit width and implicit height and I was like wait you're telling me that all I was going all I had to do was to replace width and height with implicit width and implicit height and yeah and that was it, like I checked and it worked. Let me actually show you this thing in function so how does it work. We get back to our nice placeholder element and we can see that we have implicit width is current toplet so if there is a current toplet it is the width of the current toplet and that's it, the implicit width and that was literally it. Now we can see that if we go into edit mode we drag the system tree and then this one everything works except for when you release elements because they're messed up and that's what we're going to investigate next but let's just appreciate the fact that I spent like three hours and I think that all I had to do is know that you know if you use a grid layout like grid layout this one here we have a grid layout which is called the current layout and if you put elements there you need to use implicit width and implicit height. I didn't know that now I do and by the way I received lots of useful comments trained to help me debug what was going on. Some of them were actually really interesting and I spent some time looking into them but unlikely it was as simple as this so okay let's see what's the issue now because there's always some issue to fix and it is the fact that drag and drop is not working anymore in the form of actually dropping things in the right place and that is because I try to implement a suggestion from I don't remember who like this is working it's nice but in general it isn't so I had this suggestion which I thought was pretty cool and made sense which is okay instead of saying okay you need to switch the place of the placeholder when you actually go behind half of the applet you're dragging on top of let me make an example let's say that I'm like dragging this show desktop around this show desktop is moved on the right if it's on the right part of the system pray and on the left if it's on the left part of the system tray you see now that it doesn't work but before it did so this suggestion that I got is instead of making the placeholders switch when you go past half of the applet make it go the other way around when you reaches two thirds which is makes sense like if you're like dragging around here don't switch yet maybe it's just like a miss click or something don't switch yet but if you reach the very end two thirds then switch it that broke everything why does it did it broke everything so let's first of all revert the changes that it did which is pretty easy we just need delete this code I'll explain what it does in a second and like this and it's as before so what this is saying is if we are on a horizontal panel forget about this one this one is interesting if we are on a horizontal panel and the position of the mouse in the item is less than half of the width so on the left part then go put the placeholder on before the item otherwise else put it on the right and by the way in the last video I talked about this property as well which is placeholder dot parent equals configuration area I actually understood why it was needed so thumbs up for that it is resetting the parent element for the placeholder because if you want to insert something in the layout it has to not be in the layout in the first place so since placeholder might already be in the layout you first need to take it off put it somewhere anywhere and then back to the layout so that actually made sense and I added a hopefully helpful comment so now that we've reverted to normal let's switch back and make install this new version and see if it works okay and let's try to drag this should I stop around this is on the right and now it's still on the right so it's not working which is very nice it's always very nice to have something that's not working I think so you can fix it you can see that we are dragging it on the left but it still pops up to be on the right which you shouldn't what about this one same thing happens you only manage to place it on the left when you go through the entire applet which is wrong so what's going on question number one is this code inserting the placeholder before the item we're going through actually being run in the first place console.log the answer is yes so that's pretty sorry yes so that's pretty easy to know let's try it out by the way if you're wondering how do I actually manage the console to stay there when I go into panel edit mode the trick is to make it set it as always keep above other windows and that works so let's actually go pick an applet and then drag it to the left here hello hello nothing happens like you see a lot of densories yes but they're not coming at the right what the hell is going on there look at here okay now it's on the left now it's like dancing hi I am the dumbest developer look at here look at this beauty I wrote property ball is horizontal so in theory this it should be checking if the panel is horizontal ball is horizontal plasmoid from factor equals plasma core types vertical now how stupid sorry so we were saying horizontal now it should work now it should work so the weirdness that we were facing was because for because it wasn't actually checking if it was was going left or right but above on or underneath of course that doesn't work at all so now now we know why so let's try again we compile and run and now now it should be working flawlessly so like this like this like this and it works maybe you saw that there was a weird glitch at the beginning but that's unrelated and we'll fix it later on so we we can actually go here and remove first of all the console log thank you and now we can actually re-implement what I was saying so like this and this condition pretty much the same but else if we align the conditions and this time if it's more than two thirds of the length two thirds then it should switch otherwise it shouldn't make sense doesn't it so let's actually do this let's go for it whenever I change some code while posing OBS I feel like those Minecraft streamers doing like some mining of camera and then they come back with diamonds and stuff so why is it everything broken nothing is working anymore what did I do I broke something let's go see the log there should be some errors somewhere this is unrelated blah blah blah blah blah blah blah blah blah blah blah here expected token on line 72 sorry about that line 72 here expected token comma what what's wrong we're missing a close aren't we one two yes now it's right right let's try again okay now I bet it works yes it does let's actually see how it works so here it doesn't switch here it does here and it's very nice so you can see that it stops being so flickery guys left and right but if you're dragging it on the right it does ignore that weird flicker but it does feel more natural than before I believe if like with before implementation if I went to the middle of the test managers that started doing this you'd see the panel green but now it doesn't so thank you for the suggestion I don't remember who you are but I do remember the suggestion so sorry about that next thing is what hell is going on with that element I don't know if you saw it they keep they keep going to the far left and then going back and that's because currently I deleted lots of code that stopped applets from doing dump animations and that was before the code was that was because the code was very ugly so let's give it a look and it is all year it is it still is very ugly like I really don't like it so I think we'll delete more and then try to guess how to get it back in a prettier way so this is the container the container is the an item with the applet inside of it and in here it has some properties it has first of all an applet inside of it then there is an odd x and odd y which are set to x and y y we'll see why when x changes if we are moving for resize then we are no longer moving for a resize and we stop otherwise the trial translation x equals odd x minus x and translation y equals odd y minus y what's going on well basically we're setting the delta in x and y to this translation object that we'll see what is and then translining running equals true so we are activating animation called trans and then we were set of course odd x and odd y to the right values and same for y and then there is this translation item which is a transform and it is a translate element what does this do well it's an element that actually translates the parent in some direction and then there is an animation that targets the translation to the properties x and y what's going on well the idea is okay so the element went from here to here so we actually move the element but we also add a translation property so that it looks like it's still here and then we animate the translation to make it go there very ugly I don't like it let's delete all of it okay so number animation this is necessary probably because when we insert an element it screws up something probably yeah go away all of this and what we're going to do is actually animate directly the x and y properties and I think there should be a decent way to do this I'm pretty sure so blah blah blah is in tight target target parent I guess or container properties x and y to nothing like this this should work probably I mean it shouldn't but it shouldn't like die either so we can see what happens okay hello okay animations are broken nice that's what we were looking for right broken animations how do we fix this well I probably used the number animation wrong I always get these things wrong so let's take an example from the last change I've done which is in desktop package contents views panel and it's somewhere here number animation target property property is opacity to zero now this is a transition I don't like it and why is the good that I wrote not here is it in some articles that haven't landed yet yes of course this is from the floating panel thingy that hasn't actually landed so let's give it a look yeah it was behavior on x number animation duration blah blah blah so about that I never learn okay so let's get back to the code we were looking on where is it okay it was actually this behavior on I totally know how to spell behavior like this number animation which now only needs this one this one not this one not this one and then same for why why why not like this let's try again again should be awfully broken but we're here to fix okay hello oh my god what is this are you kidding me I mean look at this it's like it doesn't want to move look at here come on come here what the hell is going on why you're not would you do that oh my god okay hello at least come back to the panel this is so interesting though like it it only moves by I know why this happens yeah okay maybe I don't maybe I don't but this I know what this might mess up with in here we have this current up with why plus equals mouse okay but why but why why don't we just say current up with why equals mouse why why not what's the idea sorry so basically every time we move the applet we are changing the y by the moment the delta y of the mouse and the issue with that is that every time we set the y property again for the applet the animation resets that's my guess but if we only set this I don't see why it shouldn't work honestly like I don't see why we should do this whole last x and last y mess in the first place now we can actually take these properties off entirely my end target is to slowly delete everything from the panel and like very gradually delete everything there won't be a panel left after I'm done with that jokes aside edit mode let's see if not works okay oh my god what the hell is that I mean come on just say that you hate me what is that if you go slowly you don't is something resetting the x and y of the applet if so why it only happens if we move only happens sometimes especially if you got a place on the left and guess what how on earth do you break the panel just by adding an image like come on I just added an animation of property you can't do this to me what the hell is going on what is this why now I can just drag anything anywhere it doesn't make any sense whatsoever and is there anything still using the help us instead of actually setting the right position for whatever let's search for this now okay let's search for current applet X okay these are the only two occurrences and if it's not this I have no clue whatsoever what it could be honestly how do you animate elements is it because of the grid layout again is there any documentation on this okay I think this example might be interesting to us so what it's saying is that he near instead of doing this we should actually go for a kind of translation approach so transitions transition and then we go here for number animation and basically we should be targeting properties proper TSM XY and blah blah blah you know the easing type and stuff I need to copy paste from here like this okay so that okay so this is what this random web pages talent is not around the web pages like the documentation this is what the good documentation is trying to tell me I don't know if it's for this particular use case or if I'm just messing up but we'll discover it soon moment of truth I guess okay hello oh my god what is this this is terrible there must be something going on when setting like X and Ys this must be something going very wrong I can still put things on top of each other wait what if it's only used for states that would make sense trans transitions between states no translations that might make sense however that doesn't explain other world behavior that I was seeing and what happens if I just get rid of all of this no animations anymore what happens then like does it just not animate or is it broken I think it will be broken actually let's try it out and yes this is pretty broken okay so we've done something very wrong and potentially it was that and where is it where is it here potentially it was that this although I don't see why like honestly I don't see why this would be an issue whatsoever current tablet why eagles miss Y okay okay I understand I understand what I'll figure this out so as always we stop the video half through any issue that I can solve because that way that way we can actually you know I can work on this without explaining and hopefully that leads me to a quicker answer but not always the case but still and big thanks to all the names there I still get confused by this mirror thing and they really do give me the motivation to do this like every day I'm publishing videos every day and since I've done that I've received a boost in like patterns and stuff so I'm really happy to do this and hopefully I can continue to do this if you want to join this club then links on the left your left my right and that's pretty much it see you next video and I'll probably took a bit about the you know third video of Linus because why not and then back to coding and trying to fix the panel