New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Ethereum Core Devs Meeting #13 [4/7/17]

DevconMon, Oct 9, 2017, 12:00 AM

Agenda: https://github.com/ethereum/pm/blob/master/All%20Core%20Devs%20Meetings/Meeting%2013.md

Transcript

hello Christian alright cool houses this is Demetria can you hear me yes hi Dimitri how are you doing they're fine just finished myself dub development oh nice would you make a contract for making polls and voting for them poles nice very nice so to listen just just so we understand what so disco is imported and then you post it after on reddit but it's not life or it is outside it is not live I record this and then I cut the recording I take notes and then I post the recording on YouTube and the notes on github simultaneously oh so you have to have to reupload it to youtube I thought it just went of math you know so I'm using hangouts not what's the other one there's another google one that's like hangouts but it's like hangouts called hangouts live that's the one where you can like broadcast it to people but now yeah this is this is one I just record myself oh yeah I never one this is a different vision yeah I don't you go yeah it I need there is a good guide many sale wartime you have had to edit the goals like laser mode not generally so the only reason would be if I have like a skype message pop up or something and I have to like edit the video or like last time someone's audio is messing up and it made the volume spike like an incredible amount so I just needed that part so when kill everyone's ears and the reason that we use normal hen goes and those live hangouts this will understand sure said like the normal hangouts the reason for se using that is that there's a with when I start a hangout from the etherium a foundation like an etherion org account it allows like up to 25 people and that's the only like free solution for video conferencing that I found I don't think you can do that on hangouts live but I'll look into that because that would be interesting because then we can have these like live with the community and stuff okay just one note yeah I said be cool hey Casey can he hear us yeah I hear you awesome ok so I think we have pretty much everyone who's going to be here so let's get started let me pull up the notes cool so agenda item number one is the resolution from last week when we were talking about static Hall Pierre call revert opcode dynamic return and all that stuff and the parties who are interested are in a skype conversation that's been going on for the last three weeks and it looks like what we're going for I'm going to say this and I'm going to have Christian and Alex and a few other people correct me I think we're going with returned data copy / size and static call but not peer call is that correct yet at I also understand it ok leary the exact details of all this unless those so decided yet yeah I they also have preferred o'er avert yep that's right server it's going into yeah this is more to decide which ones which eip czar going to be said to be going into metropolis and which ones can be in which a ip's can be put in the status of superseded or withdraw so I'll be handling that or casey and i both will be changing those statuses later okay so is there any other comments on that right now or is that one of those that can be fleshed out a little bit more in the e ip's i think a lot of that's already there there's just some little things people were having questions about I think Nick brought up something with Oh something with called that in Metropolis but i don't know if thats related to it so I items I don't say I understand where the active acceptance come from I i I've see no acid from from italic on the skype channel that he want this but does it mean that stood there foo foo developers acceptance from other teams and yes so the on the skype chat what yeah but I basically asked for a summary because there had been the message you're referring to is the one Vitalik sent like about within the last 10 hours and I basically asked for a summary and the reason Vitalik was giving his opinion was he wasn't going to be here this morning he's like doing a talk or something and neither is Jeff so um what I got from that was he was just giving a summary it's not like a for sure thing but everybody who had a like opinions on this last time had been talking it out over the past three weeks and I saw a metallic Nick jeff martin and alec spares aussie agreed to it but it's totally it still up for debate if anyone had any other opinions ok thank you yeah that's a good question know kind of what how things get accepted because someone asked that recently and my view on it because it's still kind of organic is that the people who care about it if they come to a decision on it and their stakeholders and either the change or the i guess intelligence required to make the decision on the change that whenever they kind of come to agreement that's when it happens if there's a stalemate there can be other you know things like signaling methods like you know carbon vote or other things going on that can indicate you know breaking a stalemate if it's like a big community decision or other things we're developing so yeah it's it's kind of just case-by-case basis but this is like a super nerdy like high level thing I was just like these six people probably know what they're talking about or I should say low level thing alright cool so that's pretty much settled I sort of a question about your Commodore one would like to get opinions about so at some point it was suggested to clear the return data on the first memory size is there anyone who could give the reason for that or are their opinions on why this should be done who has raced this idea Gavin us with them was it in the skype channel it's a comment on the public recipe so I cannot like answer right now but I can do some investigation and try to response that in the comments but it's hard for me to tell if that has any benefits at the moment I think Nick's joining in can maybe shed some light on that but um let's do this let's go to item number two and then go back to item number one because item number two short and you just an update and then yell then we'll go back to item number one with some more detail from Christians question so yeah Peter if you could just run through just a quick update of click and wrinkly what I'm sure thing so as last time kind of agree that because there seems to be a good approach to make a simple enough proof of authority chain that we can make a basic internet cross client so since then one of the things one of the problems with deploying ring be or destroyed a fiscal and current is that it's a kind of a huge hassle and one of the things that we so it means a sapphic because whatever those are kind of needed to do one thing that we kind of relied on the community until now is to provide for example a good faucets and of course without that piece of authority test that is working zero unless somebody's somebody's just staying at their computer and manually sending out Peters so since then basically we've been working on a small tool to actually help deploy these private networks including ring beep and actually we all scream planted a pasta dish on a light client and github authenticated faucet so that anyone with a github account and request fund and with that I think more or less the cliq can during the work from the Gaussian themes perspective is kind of ready I mostly writing up some tests I found some corner cases i added the documentation to the eip and and just for the reference we are kind of planning to release the next version of gaussian next week and we figured that saying that hey this version contains ring b and this is the new testament and whatever that might be a bit pushing it since since the whole thing never went through a proper field test so we're aiming to do this kind of an Olympic version referring to be so basically we provide all the divider guide how you have unwanted connect to it and they can play with the faucet play with the sinus page with whatever and then if things go according to plan and we can say that okay this remain during this whereas if something blows up there at least to have a smaller somewhat disclaimer that yeah meaning that since Cassie's the only foundation there might be some unforeseen issues this would be really nice it from if soonish soon or later we could also have some other implantation there to validate that our code is actually correct but that's kind of the status great thanks Peter is there any other implementations in the call that have an update on or start tired this morning any other athyrium clients in the room have an update on implementing click or plans to implement it so CPSU name is currently focusing on or metropolis oh yeah I think I think there's not like an expectation of cpp etherium to do it because yeah you're doing metro and yeah that's is also is a a CVP athyrium does it already work with other other non proof-of-work instances of etherium so we have some kind of pluggable consensus mechanism but that's not I mean is in use for testing validity but not in a networked way okay sounds again not hard to implement that yeah just priorities no problem okay awesome Peter and the next steps for the whole rink be and click VIP is to move it from an issue to a PR so now that the edge case has been identified it's already pretty much written it's just moving it literally from the issue section to the pr section and then having some of the editors just check it over one more time before we approve it since there hasn't really been anyone from the community who says it shouldn't go through and any stakeholders have said that you know it's good to go okay great so on Nick's joined welcome Nick and Christian if you don't mind repeating your question because I think Nick had mentioned it in the skype chat so Kevin suggested to clear the return data buffer when memory is resized what is the X exact reason for that and do we really need it I think the idea is to minimize the maximum memory consumption and otherwise if you do a call which allocated data buffer and then do something with expands memory if we mean total memory consumption and we higher bandwidth in the current measuring this would also allow you to implement an implementation Ted contiguous memory for the entire call stack ravin even to allocate a secret chunk for each contracts personally I think it'd be fine as long as its defined to erase it after expansion so you can copy return data into newly extended memory now I mean if it's possible I would really like to avoid that because it kind of complicates quite some things which things to a complicating I don't know and then optimizing for example you have to take care not to change the order of anything that largest memory and anything that reads from the return data and you can yeah or it basically forces you to copy it out as the first thing you do after the call I think like personally I think it's ok to do that ok that's a good patient because I mean you already effectively has a very own where you can reorganize things because you can't recognize if after another call come on and it also complicates static analysis because I mean determining whether memory actually increases is quite a complicated condition isn't it on the effects ended by in store and a couple of coffee operations so anything that accesses memory might expanded but you basically have to check have to keep track of the current type of memory and you might not always know that you're talking from the perspective of a compiler out Noah said again allowable ok but Oh real quick which eip is this because our could he just said he added comments to the pr i-- cup cooled a number off into the woods okay it looks like Martin posted it okay it's in chat here no what okay and I think our Cadiz joining too so he might be able to provide some idea from the parody side of things what the idea was okay it looks like 20 and it looks like they did with mixed up okay cool I'm just reading through right now so it's the increases the peak allocation more than looks to be done today oh so I'm really tired is it actually 1400 UTC or like after that time and Khun ka is ok perfect ok because ya son is asking like it already and i think yet Martin beezies joining as well uber google tells me it's the 13 24 you can see by my mom oh it's 1324 Gurunath oh and sorry UTC is sitting 24 london time affording 24 oh I've been putting the wrong time zone down let me look yeah we are in gmt +1 with the moment ok that could be causing confusion i will have to change that sorry everybody yeah because i'm looking now at my notes and it says 1400 UTC and that's nine a.m. my time not 8am ah ok so i just call start an hour early that would explain why people weren't showing up well anyways everyone mostly is here now so uh back I guess till our kitty gets in here let me go back to the agenda yeah because you'll call my block number yeah we could we could do that let's see Oh item number three is eip 186 I haven't really looked into this but it seemed to be getting some community uh I guess some community hype around it reduce the issuance of ether before proof of stake does anyone have any comments on this there's a carbon vote for it going on that I okay I I don't really understand where this came from I saw fled medium boast about it and I read it and my opinion is that he he posted this as just an idea out there and then everyone started taking it really seriously and my opinion is that unless we have a very experienced reason that the system is broken and it should we should reduce the Lycians we should not be playing with it unless we also have like a very clear out Whitman on when to reduce it or when to when to increase it otherwise we risk making a very uncontroversial updates into a controversial artwork just because we are playing what they think is is economic policy I don't think like fingering economic policy just just because so that's my opinion and anyone has so does anyone here have his any support for this or was thinking about taking a furious with me how how's the feeling of the room I mean I don't particularly support this but I'm curious that's how large state community support it's about it yeah I'm pulling up carbon but to kind of see not that carbon belt in this case is really like a huge indicator herbal tea ninety-nine percent for it it has a median feature behind it but honestly I'm not sure how many people how many people have taken that seriously I know that I I didn't vote I mean my I wasn't exactly thinking it was people were taking that seriously so I'm not sure how I think carbon vote measures what some people actually understand i know some it was he first appeared during the dow dow whole so that's that's sort of why people are taking that okay yeah i mean so yeah i agree alex i think the idea behind it was that as proof of stake gets closer there's going to be reduced incentives for minors so there's going to be a slower responsiveness in the system if there isn't things done to change the issuance rate i guess and that's just purely for I guess purely to help the miners you know have incentive to continue to mine which I don't see as a problem the second but I guess it'd be a good idea to at least have a plan if that becomes a problem weight reducing the minor reward would sorry not reducing the minor or reducing incentives sorry reducing incentives for minors and so as to facilitate the adaption to the POS hard fork so it says see so yeah basically you actually know what I to forget everything I just said I don't understand what 186 is about I hope my understanding ones that the idea was to put off the wii iso page but reduce issuance anything to in proportional to the sea i th head was still happening because that's all the miners have been promised to victory hmm and i guess yeah so and promised by that you mean like within road maps or whatever people are put out as road maps or more just like codified sorry i didn't say the question you were saying like based on what compared to what the miners have been promised do you mean like promised in a traditional sense like someone making them a promise or like promised like that's how the system set up so that's how it's expected to rise yeah i mean in code so if the pork doesn't happen in miners income will reduce anyway because of the Ice Age and the suggestion is that if we're going a fork to postpone the Osage we should include some reduction and minor reward which they live ahead anyway oh I see ok any other opinions in the room on that to the clear that's not necessarily my opinion I'm just I think that's the idea behind it oh yeah now I'll go in it I generally think that it's not a bad idea as long as it's equal to or greater than the amount they would have got with the ice age because at that point Benson re they're not likely to oppose the call because they'll be worse off if they do so if this proves the fridge form from of words happened one year after faster metropolis let's say that if let's say it happens in 2018 or one year and a half after that does it make such a big difference on them I but I I feel it wouldn't make such a big difference on the amount of whatever the miners get so that's why I'm saying it's it's making something that it might make this this hard for commercial hmm yeah I guess it's one of those like it might not even be a question of if it shouldn't go in but maybe what should it even go in and metropolis or should it be thought about for a different part fork yeah I mean I may roam deleting that no one in this room has any like strong opinions or or against it it feels it did something that came sort of from Vlad now the community sort of asking around and it's not something that anyone really once is it or on my phone I would say that the people who are very interested in it are ones from a side of the etherium developer community that deals with a lot of the I guess economic policy and thought so researchers and a lot of the researchers are in Malta right now so they're not on the call but Alex chimed in a few times on this I think his opinion was kind of this probably doesn't need to happen right now but and don't quote me on the sunny to look it up again but last i read it was something like if there's enough community support it's worth considering but otherwise he didn't really see the need for it this second was last i read so yeah sounds like I mean yeah this isn't going to be decided in this call but I think the things I wanted to get out was if there was anybody who had initial thoughts so thanks Alex and Nick and everyone the other thing is if something like this were to go in like from a technical perspective what change would this should be like a really simple change too when I say simple i don't mean simple to decide that's simple to change in code I think yeah I think that the tentacled it is super simple but I kinda agree with leaf Alex that even though like that the summary of all incomes will be greater it will be hard to defend that in a social media and and places like that because what will people will complain about is like that's changing their the word from five to four and so on and if that that would that would be probably dead and in the new cycle so it depends if you care about that but I can like my perspective is if this is how it will go and see I agree it will make the less controversial helpful to very very controversial one I don't read some yes I think the other argument is that if you if you are going to postpone the ice eh basically that means that you are raising we are giving people more money by postponing the i th so we yeah I understand that but we all know how it works but that would be much harder to explain yeah you're talking more from a so it's more in the grand scheme of things is it better to implement this based on some possibilities that we're not sure yet but then face the backlash of a more controversial hard fork and a lot of the you know complications that come from putting controversial things in a hard fork and maybe even setting a precedence of changing a lot of the core economic things just based off of you know on or people would look at it as changing these core economic things on a whim yeah I agree yeah well moving the Ice Age is already changing core economic on the win yeah that's a little bit more so but the balance there is that if it's not changed then the block times would get would eventually get to the point where they would be interfering with normal you know people's work with athyrium something like this isn't going to change how transactions go through the ice age was never meant to be taken into production in the count but they actually have always been a deterrent for support people never took it seriously that we wanted to have yet like this isn't working during the Ice Age the whole point of the Ice Age was always at this point we will need to do a or otherwise the signal stops otherwise I mean we we are not normally series into thinking that situation supposed to have a 10 minutes lock time in the future that sort of the Riddler so the Ice Age have always been we need to do a fourth by this time and I mean the idea was it proof proof of stake would be ready by the end but then then it's not so I think conquering the economic policy of the isolation should not really count and my relief my real fear is that it seems that we are taking something that weather isn't even my something that community ones and if we are sort of creating a discussion and I'm given official status of it because simply people are asking so oh so you want that I don't know you want that I thought and it sort of creates this faith community support where I even really see any but maybe I'm wrong yeah I mean I think it's a good thing that we talked about this it shows that we actually do listen to the community because this is obviously it doesn't come from us it comes from community so it's worth talking about yeah effects super obvious that like the people in this call haven't even looked like looked herb haven't been following it as closely as people in the community so that's the other theory Martin that is good and alex i would say that there are issues like that this one in particular the eip has been there since like december or earlier so well before the price increase in well before they're in my opinion would have been incentive for something like this to come from like a minor some one else and the Ice Age was ice age was brought sooner because in part because of the price increase or as a side effect of the price increase so I think that the intentions behind it or good so it's good to talk about and if it comes down to you know the clients not wanting to implement it or people you know broadly deciding not to that's good if there's a huge community push we can come back and address this it will bring this up next meeting if anyone else has comments on it particularly people who have commented on it before like potentially yo each year metallic I heard some Harvey changing the block number for the Ice Age in Metropolis does someone else study answer that I forgot what we if we had talked about that so the idea was that we kind of add a special Rugal difficult calculation so that for example blocks four million to whatever million don't increase the difficulty so tennis racquetball so we already change it in Metropolis well the alternative is to roll out the second part for community around the chocolates and I'm not sure that's a good idea to do two forks one after the other yeah I'm gonna just just about the ice ages it is well it's really no point in so so if the Ice Age hard for kids really just setting to an extra rule for the difficult calculation I don't really see why it would burn its own for quiet can see just added to my problems yeah I don't think at least from my notes from last meeting I thought we were two meetings ago I thought we said we were just having one hard fork for metropolis so this block number thing would be included in it the kind of the issuance and reducing ditions is linked to the Ice Age and if you move if you reduce the difficult of the ice age then kinda you give more money so it would it would be the same discussion as the reducing the issuance oh yeah now i agree with you on that I'm talking about Peter saying the two hard Forks thing I think that the pausing of the ice age would be a single hard fork I think it's been discussed before so there's there shouldn't be complications unless i'm wrong but yeah only on your point Paolo I yeah that that would be something that would have to be in the metropolis fork for it to take effect you know after the Ice Age is paused it is a temper it was like the Ice Age is said to restore after after the four at some point after 42 resource for the future am I am I correct we were just sort of delay the Ice Age then yes yes the ice is supposed to be like just moved to the future but not removed entirely yeah and my understanding one was that as we got closer and we got updates from the research the etherium research community about where they were on proof of stake which the last like a headline I saw was the talak at some meeting saying they're like 75 percent done but I mean that was just a headline I saw so no idea by then we'll know kind of what it should be paused to to give us some breathing room one not thing about this the IEP it the first paragraph about the ID is throwing terms like price supportive and increase investments so I think it's very obvious from that I from the fact that you're discussing it now a surprising quiz that this is more about price than the technical reasons and therefore we should not be even like considering it so that's my opinion oh yeah are you reading the original eip or the modified eip the original one I'm not sure I'm seeing the only linked 01 on the 1i links to basically light upon light they modified it with changes based on feedback but if you scroll down the original one from December it says original eip proposal below and it might have the same stuff I'm just I'm talking so I'm reading before the festive modifieds still so JJ sages abstract the reduction of the issue it's very likely to be priced aborted oh yeah yeah so I see that as as a so that let me try to put it this way the oh oh oh oh I see what you're reading okay yeah there definitely is a lot of non technical words in there that try to bring up more of an economic argument rather than a technical thing yeah so that's one other reason lots of supporters yeah interesting well I mean to be fair though when you have any IP and you enter it as an issue it doesn't need to be technical it can just be a spirit of you know what change you want to happen but it's definitely something we're something that is more technically sound is going to be viewed or not technically sound i should say but more technically written rather than written on the terms of economics is going to be easier for us to read first so yeah i think at this point it's pretty clear that there's not going to be any changes happening right the second and there's no decisions at the second but so what that means is nothing's going to happen unless there's a push from you know some client devs or core devs or someone really wanting to make this change happen because I haven't heard anyone who's super in favor of this in this call great so Arcady Frankie and Martin busy welcome so Christian had a question on AI pee 211 about extending memory and arcady I saw you posted a comment in there sorry for putting the wrong time I got my time zones mixed up so thanks everyone for being flexible with that so arcady if you could expand on what you commented at the end of 211 just to kind of give your perspective on why this is a mushy be done well so the concern is that the VIP increases maximum memory consumption and it's basically explained in the comment if you so you had to keep returned data around from the call that you've made but if you allocate memory if you expand memory before we didn't return data you would get higher peak memory usage in fifth grade I kind of can we perhaps have a call after this call to see whether there are any workarounds any other workarounds yes so why not that much already showstopper a deal breaker just something to be concerned about sure yes yeah so having a separate call be good and also just talking about it at the eip so it sounds like yeah if anyone is interested in doing that just ping a Christian and have him loop you in on whatever conversation happens so quick please to include me for what it's worth I don't think with allows an attacker to allocate more memory from same guess its previously but it does mean that some ordinary case until other people did okay interesting cool any other comments on that all right great so we've gone through if we've gone through that we've gone through 186 so the last item is and then any other items people want to add after that but the last item on the agenda is metropolis updates so let's just start with parody Arkadiy if you could give us an update on where parodies at implementing those and then also you know actually let's not do that let's start with Dmitry Dmitry if you give us an overview of how the tests are going and also give us a little bit of insight about how we can help as far as either sending you you know whatever data or information you need to help make these tests better so to make that button it would be really helpful if / aap that yeah and when they consider to be implemented for sure so this thing ap should be a market of laga to be some label on github so I could other business center and see an initiate peace already considered valid because right now I see lots of VIPs and many different version of the same eid may look kind of yeah I hear you on that so if you go to the readme page we have something called except to the ip's chart and eip is under consideration and that's going to be cleaned up after this call because the eip is under consider asian are going to be consolidated or the status has changed to show the latest data but Casey and I also talked about last time having a column for which I guess if it's going to go into metropolis or if it's just accept a TI p just but non hard fork change eip so it would that be sufficient or is there something more fine-grained you would need from that on the e I means repo I think we should use a label to distinguish way I piece it should be implemented with for metropolis gender okay great yeah we can also add a label that that's really easy to do you know I can get had label right yeah delicious for the CIP like I saw the metropolis label and one call me on that then I don't know whether it was canceled to implemented yeah I might come home now before we could have them later EEP let's think all the issues for the hard work yeah alex you actually do you have an EIP about that right yeah okay yeah that's a really good idea like we should do that I'm going to put that in my notes to do that like so Alex's idea and let me know if I'm saying this wrong alex is a yep just having an EIP that lists all of the stuff that's going in the metro and then changing it as as it goes yeah my book as well and then as for the implementation theology did ravel cord and the test of that I will be ready and I saw that some client started sentiment general status it's now optional and if you want to be updated the resin test and you'll probably want them to them general specters and as test will be completed I will convert all of the generals papers into an ordinary bloke in bed like already beat for the river top quarters and then I guess Martin's render he will be running those watching tests on the hive and can we climb that implemented this LPC protocol of important books will be tested to hive yeah but not every test you recognize it selects yep and then general status most updated one okay great that sounds awesome and what is the best way to communicate with you in order to ask you questions or Cindy you test or data right depends okay okay great so if you could yeah actually I'll just like since of some alcor devs channel your your info after you can paste it in there yourself whichever one yeah so that sounds good great any other updates dimitri on that end okay then transaction test and laid down halfway and we have two different selection test one of them will be implemented in status for state transition on with the middle signature transaction and the other tests just checking transaction I feel and that one already been updated to them yeah and one or more dates and now we using this branch on the test repository and a very particular changes will be implemented in a separate branch and had like the post link to web to this and the of the metropolis test I posted the google document and on the skype test channel and then i guess yes guys to find it right now and posted and our chat as well where I described the best cases that all of the implemented they want saw other people to review the document and perhaps and vintage have some ideas posted comments and maybe some new cases that they've taken well there's a heaven mind on the this would help us to get better test coverage hoping the document I put a link to the test repository branch and the test two sources and compiled as well alright awesome yeah that sounds really well organized and was going to be really helpful for for doing all this stuff okay great yeah I see you posted the link so we'll get that distributed to the different clients i'll try to make sure everyone gets that and I mean everyone in all core deaths channel should get it anyway anyone have questions for Dmitri any of the client deaths alright cool so let's just run through some of the clients real quick get an update on where they're at so arcady parody any updates issues comments so we have most of the EA piece that we consider already so some call of ten here just waiting on finalization for John data size the IP and there is couple of minor ones left otherwise we're good I think alright great and we're getting that cleared up real soon we've made a lot of that those decisions earlier today for the return data size and that kind of stuff except for some of the nuance or the minor things within the but we at least know which he I peas are going in and which ones aren't and then let's see a C++ so I think I guess out Christian yeah I know puzzle Andre can you report there please he might walked away yeah sorry yes think we are somewhere in the middle i would say so i have not prepared exact data but some of IEPs are pretty much finished somewhere that are not ready and I think tour free are it's around at the beginning oh it sounds great and then go I guess I'd be Peter so basically just started working on the metropolis son like you he kind of feeling too good in the last few weeks so as far as I know he did some work he pushed some peers but I cannot be I don't know exactly where his act the rest of the team was mostly be preparing the next release so we didn't work on the PRS ourselves I mean the Yankees ourselves okay actually I just saw a skype message from him earlier I just remembered that said they're pretty much all done on the gas and except for like like arcady mentioned the ones that aren't necessarily finalized or like officially like we know they're officially going in or not so okay cool and then finally there any other clients in here Conrad are you still working on pie athyrium or are you primarily with a different group Oh Conrad you're unmuted but we can't hear you it sounds like you're really far away he might be having microphone problems does anyone know so um which client does Conrad work on generally I'm just blanking right now ok great ball python oh ok great yeah currently mostly concerned with getting back to main chain okay sounds great cool I think that covers all the clients so yeah as far as overall metropolis goes I think and I just want to hear some opinions on this I think by next I'll core dev meeting we should be pretty much giving like the final final on what VIPs are going in or not just so that we can start hammering down on tests or maybe it's still too early to do that what's everyone's opinion on that are we kind of wrapping up with what's going to go in or not or the next one yeah because if we were shooting for something like end of June which has been talked about before that's going to be how many months away oh wow yeah that's like basically three months away a little less than that so yeah and if we're going to do the test end stuff we should probably have things kind of finalized by next all core dev meeting I'd say so yeah I can't really enforce that but uh that's my opinion and next I'll core dev meeting i'll try to make sure we can get that done um let's see any other comments on metropolis stuff Oh Christian I think I just saw you rejoined i was asking any more comments on a metropolis stuff that's otherwise that items done yes I'm kind of two teachers uh no no coming from me oh and a Christian just cuz I know you've worked on or white men she talked on many of the e ip's do you think that and we're pretty much at a point where by next I'll core dev meeting we can say no mori IPS are going in for metro so we can kind of put like a hard stop kind of finalize the specs behind them and get test them I mean the proposed vips for metropolis kind of settled some weeks ago already would pretty much yeah the last things were the static and and the or whatever the return data size and all that stuff I was just I'm more double checking yeah but I guess so yes no I mean yeah that's her if we can so I mean finalizing suspects that is something known as yeah that won't be done next week or not that won't be done next all cordoning I'm more finalizing like no other VIPs getting in there which I didn't think there were any others i was just going to make sure i didn't miss anything no cool all right that's the last official agenda item I see Martin beezies in here did you have any like cool updates on e was them or anything you wanted to talk about are you just kind of lurking uh yeah I'm just kind of looking right now all right now I'm just working on updating do miss Jackson tas block level Oh see any any other comments that's the last agenda items so we can we can pretty much wrap it up just one to comment I think we've discussed so super that could not making work trying to figure out well on the rough just laid around with the spots of how we could sort out the transaction propagation stuff basically allow propagating and cheap transactions that may or may not be ever mind and proposal that we had quite a long time ago came up again that one of the issues currently with the transaction is that basically their lifetime is infinite so if i create a transaction may be included now it may be included in 10 years and this one kind of makes it a bit harder to reason about and this kind of so what of issues i'm not sure if you remember it maybe was it last year there was the Bitcoin network was found lacking the work transactions which lingered in the network for more than eight months and it would be nice if we could so propagating cheap transactions would probably be much much thinner if we could say that transaction has a limited lifetime so I'm not sure whether anyone is wants to do such an EIP if I think there's at least some opening from the current one Affairs perspective together on the IP does this kind of state that the transaction could specify that the elephant maybe it was very good hard limit that a transaction if you if I create a transaction block I don't know 1,000,000 it can only live for about I may be an outlaw or random number all right Oh Paolo I think you're unmuted unless he had a comment I I think it's an excellent idea and I think I think we could probably make see have them as a lot higher than the sales but I think the idea was good but transactions should have a either time safety over Ibaka this yield and babe which they should expire and we limit our fire in the future they could be India the other added benefit is for for users for example if if I have to create a transaction that that I want to be processed right now because for me it's important that it's either process right now it's our process level that I could say that okay the lifetime is maybe five blocks and if it's not included in five blocks down okay I don't care don't get it included this kind of many times so otherwise we had in the past we had this issue that someone it wrote the script which they stood up the script and they sent hundreds of transactions basically with the incrementing not just to send their funds to wherever and then every time their account that the funds it was sent out wherever because in the network the transaction to be lingering some Q and they got did get executed if it also helped solve these kind of issues were very integrated transaction it's not included in a limited amount of time then you go get the writing online yeah one potential problem is is that it would break off line science we need the nuns anyway and which is similar thing you do that with a non-smoking clean and principal find something on Leah get machines and in transporters to load and transmission command whereas if you had a hard limit then you've got the stretch time straight from doing so there is an EIP by conrad which is a think related here and its primary star luckily he talked about it and chat actually it's the abstraction eip which i guess would be is that referring to serenity substraction eip thing for the future oh he gave up on it I'd you have a link to the Conrad I think we're talking about different things so Conrad I think it was Conrad made in the AP which was mainly targeted ad replay protection if I remember correctly the idea there was that you specify a block hash and the transaction can only be included is the the block hashes a parent of the of the block of the block with that hash is a parent of the block and it's not too old kind of well i hope the idea was so the actual transaction for beta filled with an analyzer three sons not contract yes but if we wanted to be useful for the OS protection and then it needs to be balanced well actually it's not quite true the other way we can handle this way to change the wire protocol so the clients tell each other we make this or transaction Miami that must be really fast with you some of these pants transactions really lot of transactions yes and that client can look at they lie that when I saw it so anyway the question here is rather would be something be of interest we obviously don't have the details yet so this is something just to ponder about I unhappy to rationing for it yeah in fact Nick could you work with Conrad on that because it sounds like Conrad had some good initial thoughts on that and then he's super anchor he really wants to talk but he's microphone doesn't work so if we have an EIP on that either before next I'll coordinate meeting or the one after that and we can talk about it that that would be really cool sounds good great sounds like there is interest in this awesome is there any other comments of any kind before we and the call I guess there was one thing that I've been discussing not disgrace that I wanted to bring up which is the possibility of first of all life is contentious making return data copy thrown in routines to copy beyond the end of return data and second more contentiously changing core data copies to the same and the motivation behind person is that currently we made from riveros but the homeowners say assuming what they probably want thing in my own views for the easy as you should hard era when it's not sure what should be happening rather than give a default result because that would for example convert here is like the recent exchange era where they were singing short transaction data that was resulting in unexpected consequences one question you'll note that this soft part of the problem and I'm not sure whether you are referring to the fact that this polymer and a golem exactly yeah exactly yeah so the only issue is that so so they are the issue was that the you read acts basically these are provided some input and you read past that input however for example is the contract if I write a contract that requires that has five input variables and certain code paths only use the first four then i might get still the same effect of shifted interpretation yes it doesn't solve all cases but it seems to me that it absolutely I can't think of a legitimate reason for a contract to want to reap at the end of the data and therefore it seems to me that precautionary principle wheel to soar an error if it does so I think I saw in a skype chat that you did a cursory search and the only place he found where it does that is and some serpent code from auger is that right that's right I'm running I'm actually running it over every single transaction either but that's going to take a very long time because it only does a couple of seconds but so far every transaction having incited been calling that one borghi contracts and I didn't riva tax explanation but when he kind of say on that um the reason it does it is a compiler optimization is it seems too did the goal is read out all of the core data except for the signature of function signature at the beginning and it lazily does this by reading from four to call data links where as it should read from four to call datalink minus four it's doing this to skip the miners get the subtraction which of these isn't necessary so as far as I know though that's the only thing currently that's relying on the ability to read zeros ok so it's an idiosyncrasy it's not a it's not like actually on purpose yeah well it's an optimization that I think psychology book and yeah I mean if it all there is the only contracts then pets we can find some workarounds within or you know it remains to be seen whether this happens much on the chain and I'll fit XP so no the fact that that this never scientists okay so the fact that this never happened doesn't mean that there is no content that relies upon this behavior right that's true I'm back I believe we can save a clear to be a certainty that outside serpent-like the notes emergency contract relies on this behavior and lay some heads in line assembly and I do find it difficult to believe that anyone is relying rules behavior except as an optimization for call data link I mean it does complicate it it does complicate the if you're in virtual machine and it also makes it less consistent so I'm really like a law whether we should go to the simple watch any single thing inside the etherium virtual machine any anything any single data area extensive achieve of zeros so here this is what our concern as well kind of break we will define source data definition for so they I mean what what battles to be aired way of memory which Jesus would chick seems and certainly because it's fitted expansive requested any we have called data and soon your chin data are there any others relative code yes it does I mean I would argue that code copy should also should also say this error may go I guess the thing is a memory I think I would argue is a different base because it's rideable but in the case of input provision sort of fighting array and put random I don't think we should assume with the estimate in zeros because I don't think aside from like a trivial compiler optimization there is any legitimate reason to try and leap at the end of the array I think it almost always indicates mirror I will suggest this to go into the seventh EOP and the internet so i think i think the idea of changing existing stuff needs to go in the VIP but i think that a proposal to make return data copy error can be an amendment a peregrine like i would argue that Eden just like being consistently this is a rule was worth enforcing in futures and if we're unable to grandfather a pre-existing opcode what about cooking a recommendation into the return date copy that you should not accept it beyond its end so they did Leland it yeah more less undefined behavior or not recommended to do that and in the future it might change I think if we're going to change it then now would be the time I mean yes that would at least ensure that anyone who breaks it breaks themselves by relying on it later you know because I'm themselves to blame but I think it'd be better to actually just fix it straight away interesting yeah I think that it does sound like it could be an amendment to the eip so yeah so if it I guess the question that comes to my mind is just how much it complicates it like I've kind of heard that it you know it kind of breaks away from the standards is there some kind of domino effect in the future from doing that or that will by doing that will make it even more complicated for other things or is it just simply this one this one thing that would complicate it and they in the evm can I add one more comment for that sure because I think like a contract ABI 44 method without arguments you have like four bytes for for the metal tidy and I think here will I on that that we can load actually further two bites on the stack lying on that the rest would be suitable deals yes I agree and I think that getting changed with his like that Cole data what is the first if you want to change a single word only areas if you think to if the entire extincted asking to be right because yes otherwise it would make fishing the function call ID and so on to the fair can possible exit bio-memory in any case i will write happening and write us a comment on the you cling to and data one and we can argue when we've got something concrete to argue about is anyone still there yeah I am I guess we'll come to an end naturally in this particular discussion one thing was raised on the skype chat as well this might just might be useful to be considered on the high level languages and enforce set on the higher-level languages by issuing call data size before particle daughter or copy yeah I mean I did disagree with doing it in high level languages but i think that the general principle and the evm should be that when somebody is doing something that is almost virtually wrong we should pay all hard rather than fail soft which I which is you know returning zeros for instance I personally I would fail in all of the cases if it tries to over-read but that might be too harsh of a change yeah I think at this point it's impractical to fire when somebody does called out a load on 0 because they've done all the time the functions that have no acting them if it was from day one that I might agree with you yeah it actually this this is good to have historical context on this what's the general approach when we come up in the system was something like this do we fail hard generally or is that something that was a design decision early on for these type of things are these type of air not errors I can't think of the words to gage cases the edge cases yeah exactly I mean I wasn't there that when looking at Reed EVM it feels like some degree that's what I'm considered as an explosive design principles and some places are found card but in most places the quail soft another example being is talented outlined / 0 now which career institute in 04 rather than throwing exception I think the idea was to only feel hard and there's no sensible way to continue and I think that I'm Charlie dinner on jumped us yeah I think that's entirely the wrong approach because may I think that's the approach my sequel cook and it lead to numerous bugs where it assumes things about your dash type and so on I think with anything as critical as the VPN code should always assume the worst so that I mean I think the meek place in here is should we fix it now and is it is it worth the risk of breaking contracts I I think that if we can demonstrate that all historical transactions you know there's a person has the most effect and I think it was the risk of breaking things I think if we find the word you know the break a lot of historical connections in a different measure ionized except for returned out a copy it's worth being inconsistent with prior stuff favor of doing the right thing wouldn't the broken contracts your scan failed to find because no transaction quickl debug then be resources for some hacker to use to cause damage later by causing these contracts to fail what sort of damage will they caused by causing style I don't know enough to know it just makes me nervous that we make a change because contracts that work before to not work something yeah now I understand the concern and who have done this in the past like when we reach it to get costs that can cause things to fail at them passed through you concerned or not I personally are not overly concerned because I think that breaking contracts or potentially breaking contract for used to work as an inevitable consequence or a lot of mud bogs Michael Gary pricing for instance so I think we need to be cautious but I'd like to see them as a potential for breaking things oh you know for an attack at being able to cause headaches because a contract now fails at the nursery okay I could be convinced otherwise by a concrete example of course okay so it sounds like more researches to be done and so Nick's doing that generation is going to write up some of the more formal stuff and then we can Duke it out next all core dev meeting cool so uh yeah any other comments other stuff in general all right great sorry again for having this at the wrong time Jan I think you just got here and I totally started this an hour early like I started this at 1300 instead of 1400 so apologies i'll be releasing notes Jan left oh well so yeah thanks everyone for coming i'll be releasing notes in video later bye bye good money right

Automatic transcript — names and jargon may be misspelled.