All Core Devs - Execution #25
All Core Devs - Execution · 22 Sept 2017 · 1:26:47
Ethereum core developers use All Core Devs call 25 to prepare the Byzantium hard fork. After a successful fork on the Ropsten test network, including verification of a zk-SNARK transaction, they review client readiness and Hive test results, then weigh fork timing: Vitalik argues for a more conservative date, and the call settles on block 4,370,000, around 17 October, unless testnet problems appear. Other items include approval of EIP-706 Snappy compression for peer-to-peer traffic, support for a bitwise shift opcode proposal, early discussion of a BLAKE hash precompile to speed up zero-knowledge proofs, an update on encryption for Swarm storage, and the still undefined process for approving ERC standards.
Topics
From All Core Devs - Execution; community: Ethereum Foundation.
Transcript
[Music] [Music] [Music]
[Music] [Music] [Music]
[Applause] [Music] [Applause] [Music] [Music]
[Music] [Music] Oh
[Music] okay great I'm getting audio now all right we can go ahead and get started welcome everybody if we look at the agenda today we see that the first one is subtleties for metropolis so the first one is e IP 603 EC add a seam all that that's Matthew as the end the call yeah I think he's in oh wait no that's a different Matthew isn't it okay that's the one we brought up last time so I
think last time we talked about this this is about adding the adding a different curve to Constantinople I think it was which curve trying to read through this real quick like they say one yes that's right the CCP's 256k one and adding EC a dandy see mole pre-compiled for it so I think I just added that because I said we'd talk about it some more anybody who's looked at this is there any other opinions on this if not I'll get Matt in the next time to talk about it more okay cool so yeah most people were an
agreement last time but yeah let's see so the next thing for updates to Byzantium is the testing updates I think this morning and chat Arkadiy and Martin talked and did we decide between status and status code and receipts so so basically just a brief recap will add the status to receive in our in our PC awesome in so that's about it the paper in call F yep okay does that need to be in an e p-- like added in II don't think we added a
neat I'll update the wiki or methods someone please correct me if this actually needs to be and I need someone but I think it only needs to be updated on the wicket okay that sounds good to me the next thing is hive test updates so I think if Dimitri's in if we can get though actually that would be Martin and Casey then Martin if you want to go first yeah so we have three clients from hive the one that we're missing is well one of the ones that we're missing it should be there is a ethereum
unfortunately but otherwise that's pretty good where Jeff has a few failures but all of them are due to how handling how empty accounts are handled which shouldn't be a problem in the future it's a retroactive problem we have an experiment experimental branch which has his hive fully and all the fixes there are only related to empty sorry and collisions but we don't really have to worry about collisions until next work so yeah I'm parrot it as well on how and
to be as some errors but most of them are are not actually due to failure to parse failure to have the correct state it's because it doesn't exit properly so have looked good great before we get off of that Mikael from aetherium J I saw that last time you said you were looking to integrate with hive eventually I do you have any updates on that yeah we don't have any updates on that adopting tests which you know was not which were not adopted before there are some RLP tests still not adopted into mg and and as I
remember we have a B itís not about it yet so I'm working on that now so I want to adopt all tests from best repository and then go with hi try to make an integration with that one that's not the fence one more thing that I'd like to mention though I don't know me traits inner but one thing that is lacking from the tests is difficult the tests and the bittern which I which have been busy with that yesterday and today now they're pushing
you new difficult fast solution try out for something difficulty I don't know if it's you might have to wait a few more hours and there should be in the past we chose we can't do those tests and how unfortunate but it is so each client basically need to import the test and write whatever the bespoke framework you use to run the test so we get that covered as well okay sounds great and then lastly with this point Vitalik he did mention pi is not compatible with hive right now was there
any work on that currently there hasn't been any work on hive yet I mean although there has been work on getting Python to comply with the block test so which it does no that's great but I recall in the in the court in the chat about a something like a few days or a week ago NCAA I bring up one if you although like it's not a substantive issue because maybe it's it's only an issue with the test I think it has to do just do with but my guess is that it's because of the young sport like the the post test for Easter Egg in accounts number three bug got replicated to the other accounts as well but like I'm I'm
not worried because that's the we've already just filled up those accounts with one way on the main net anyway yeah I think we also filled them up in Robson too right okay cool um that's not lunch update okay so we successfully forked on Robson so yay we also did a I think we've verified a ZK snark transaction am I saying that right yeah we verified the zj snark of a desi cash transaction yes okay great so
that's pretty awesome too right now or actually Casey I don't know if you were keeping up with us but I think Robson was under attack I know you mentioned something about that is that let up at all or is there any updates oh I don't think we could hear you Casey he might have to be having microphone problems right now feel free to speak up when your problems are solved Casey but
basically the other day on the eighth dev subreddit they were talking about raphson being under attack and they pointed to a they pointed to a account that is publishing a bunch of transactions here's the link to it and then there's another link here about some things not processing correctly I don't think it's anything of too much concern because it's a test net but I just want to hear opinions on that if there's anything that anyone thinks we should do in response to this on the test net I don't know why someone would attack the test site except to I guess
battle proof it these are the queue of thread seeing Roxton his not processing transactions and robson is currently under attack rated yeah those are the only ones I've found that is basically yeah and I think that Casey said yeah here is what Casey said in response yesterday I'll post basically just push the gas price up to 50 gray rage yeah and then Casey pushed it down again because a because of a minor film that is running okay yeah that's pretty much it so I think that mitigated it slightly but
people are still having trouble getting their transactions and basically no so oh well any other comments on that no I mean yeah this does seem fairly inconsequential I mean the main thing is that it does show the Rob's the news and opportunity for testing and refining the estimation algorithms yeah actually I wonder what he's using to I mean I think he's just doing really expensive like stuff and the contract and then like filling up the whole block so what was there anybody else okay so the next one is well everyone's pretty much
implemented pretty much everyone's implemented all the EIP s because we've done the test net launch at least on Gotham parity so I'll ask I guess for updates for testing if there's any updates that weren't described in hive so Peter are there any relevant updates for byzantium and gifts no okay Arkadiy with parity oh sorry didn't know major updates think very good okay great Christian anything update for CPP aetherium I don't think so but you should probably
ask Paul or Andre okay cool so let's start with Andre Andre any any stuff sounds good yeah nothing I'm aware of I think the most the most development time is on actually tests to add more tested and tweaked testing tools okay great atheria May I think in the last update you said that you guys are up to speed on Metro and you were working on tests what other updates do you got we had
past the transition successfully so everything is good for the moment I mean I'm Robson okay you said it was good on Hudson I mean sorry I'm Rob stone I was about to say like what does that mean so aetherium Jas I think Jared you might have an update on that uh yeah so progress is moving forward we are intending to roll out the Byzantium changes on Monday awesome so what that would mean is just basically you can full sink on Rob stone to the Byzantium fork right you know what I'll
actually have to double check that but I will I know that we're passing almost all of the Byzantium tests and but yeah so I will double check that and get back to you on that great any updates for the yellow paper yuuichi [Music] yuuichi I don't know if your mics work and we can't hear you okay yeah hey you just let us know and
chat if it's working or not but I just looked at the the issue open for metropolis changes and it looks like everything's checked off including the open the open e IP - or I think it was where was it I think it was a IP 206 that Andre pointed out was potentially had some issues and I think that was fixed so the yellow paper seems up-to-date as far as issues in Paul requests not necessarily merged the next one let's see any other clients it doesn't look like there's any actually let's do something a little different so Daniel I saw you were in here are you're
still working or at least up to speed on the swarm updates right yes I am yeah if you could just give us kind of an overview of where swarm is at right now I think that'd be really cool okay there are few independent things being we're done I am primarily working on privacy issues so basically encrypted swarm because basically what we're nearing - is a stage where something making the functionality of Dropbox can be implemented so we already have a few s mounting so swarm volumes can already be
mounted in the UNIX file system as a that already works we already have a web-based file manager like thingy so those things they are they are ready and the only thing that is gravely missing and because of which people are not willing to do put their private files on swarm is encryption there's another issue that we discovered that swarm as designed originally is not very
resilient against I turn so if nodes leave commonly frequently than chunks which are present in the network cannot be found for a long time and we have already redesigned routing to accommodate for that but it hasn't been implemented yet so that is a backlog item what else do we have we have a test not a test cluster and we have some diagnostic tools with which complex simulations can be carried out
how swarm would react to various like network splits or churn or things like that and this is a really useful tool because that's actually what allowed us to to to diagnose the problem of a churn what what really causes it so concerning privacy it is going to be so first it is going to be a weak kind of plausible deniability so if you have encrypted chunks on your hard drive you can claim that you know this is random data and
you don't have the key to it but if it turns so it plausible deniability is a is a multi-faceted issue because it really depends on on the like on what what the what the threat model is so I think that as long as the internet remains a you know halfway civilized place that would that would be enough but as presented in Berlin we already have a much stronger
plausible deniability solution which is so it causes quite a bit of overhead it requires twice as much data stored as as the plain text but that is unconditionally secure in the sense that to any ciphertext you can find for any ciphertext and any key you can find a plaintext a no so for any ciphertext and any plain text you can find the key that would mean that no ciphertext can be proven to belong to a particular plaintext but
like I really believe that this for a long time so this so this is a backlog I'm like wait wait so we're we're in like we go if we wanted to like try Swan or learn more as there like a website well there's a swarm site so there's there's some pages that that are already hosted in swarm that contain the swarm documentation and there's the swarm gateway which is a web gateway to swarm the current the currently registered domain name I think is let me check yeah
and actually what you can do if you could post it in the group chat we're running enough you said one Gateway com no it's the worm gateways swarm - gateways doc Matt great let me post it here yeah there's rest in the group chat that it that would work great cool so thanks so much for that update so let's see what the next item is here thanks Daniel instead of let's see actually yeah the next item is review timing for and release so the test net has been going well so far in regards to I mean running smoothly I think everyone said has anyone found any problems that with
the fork at all alright so I think we can look at it in today's the 22nd the ninth was a date we threw out previously for the hard fork to occur that would be in let's see 14 15 17 that'd be about 17 days from now so what is everyone's thoughts on when the actual hard fork should happen and should we decide a date today okay so today being this kind of 4.3 million watched series the only just get out what the block time should be okay so one minute ago a thousand
blocks takes eight hours and five and five minutes so that'll be at C twenty eight twenty eight thousand eight hundred seconds twenty-nine thousand one hundred seconds so we should see about a twenty nine second block time right now when the still technically show it's a twenty five seconds because we just haven't it's kind of fully gotten to it yet but yeah twenty nine second is what what my I say Chingford roughly predicted so seventeen days would do basically means 17 x 86,400 divided by twenty nine non-answer which is fifty thousand six
hundred forty eight watts so basically will give us almost exactly four point three five mil so four point three five mil would be the ninth is what you're saying or around that time yeah four three five mil will be the walk number cool what are people's thoughts on that date hmm I would pertain I personally prefer just being maybe slightly more conservative and going for something like four points three us us seven or so mainly because like I I do feel like in a we're totally
not in an emergency situation and see if you're an ecosystem is bigger and so I feel like we should but fear more towards kind of standards of conservatism than we have with what was homestead in the past okay that's a good point I mean I'd actually even be willing to go all the way up to four point four million but what was that if it translated the window 4.4 million translated in today's would be basically thirty four days so it's something like October twenty-fifth have we set the date for a renovation we we maybe set that date and then hmm well so rinkeby in my opinion isn't too interesting because if GAF has a consensus issue it
was they still staying consensus with itself so yeah I think the same applies to Kevin or cut the Kevin so we can basically we can set whatever a fork lock in the next release of gas and just roll it out but that wasn't really that doesn't really represent any insurance as to the main network okay let's see that's not it's too bad the move networks today or client specific I didn't think many people are using Broxton for like the one thing I probably wants to port personally see
before I mean the main that releases to basically just try a bunch of things using all of the very all of the different pre compiles on mega on top of the Rob stand live network list like basically send a bunch of transactions that I try to use every single I'm the IP in different context including the static call stuff including make referred and so forth so in that case it's not so much a matter of time as it's a matter of memory okay so if that's the case we could do a little bit better about planning maybe days or time
periods where the major clients run those basically send those transactions that use the new features and see what happens is that kind of what you're getting at that there needs to be a little collaboration on that yeah well you know actually you don't really need collaboration we just need a couple of groups of people to just like do stuff and like be throw whatever junk on the eutherian blockchain that they that you know they wants do and then if all three clients they in sync then we're all good okay speaking of multiple clients what's the status of ICP P being i/o and number one being compatible with all the tests and number two being like eight clients that
quickly radically stinks of watching no sir about being able to sync so we have Ryan Rothstein not currently it can be seen on status Robson page and yeah we just recently merged the current experimental feature of snapshot import so now you could take snapshot in the parities work format and think import it and then sing from that point now for main that there are still some issues with the sync i'm yeah the the other question i wanted to ask is on the gift
side I remember in the 1 to 8 7 released and it said that there were a bunch of improvements so things like the generally the generational cash aspect various optimizations that you wanted to do and 1.7 release and it would be also nice to have some of them have some of those out before byzantium as well basically because like in bytes I'm like the bear box they gasp woman sorry the the block time is going back down until the capacity is like backup so it would be good to have some of that just for safety yep I agree I'm basically we're kind of waiting for Nick to sort out some issues on that front although I think was kind of bit busy
with nowadays with some not short but that so his work in theory looks solid the only issue that he still has to figure out is to make it make sure that fasting doesn't break because basically his work is based on not committing every data to the database justin sporadically which is a real nice performance improvement but we need to ensure that nodes are still being note still can sync right I mean the other thing I personally want to see it just is how much of an improvement that gives on the yama the 2016 dos attacks so especially the balance and the SD XD
code size stuff like that's basically probably the best kind of live test that we have for like the kinds of things I'm worried about or I'm interested in optimizing yeah yeah yeah so we did try a few benchmarks but so I mixed code had some bottleneck problem that he needs to fix before we can do any meaningful benchmarks right you know it's the reason why I mean the main problem with kind of artificial tests that I've found is that in general it's hard to make kind of artificial tests for things like already having a 10 gigabyte database with like 20 or 20 million state objects which is the situation that we have in reality yeah yeah sure so I completely
agree that testing only so only using the main that can be a meaningful test okay not so I'm still waiting for Nick to finish to fix one issue and then then we can run a nice nice test and see how it performs basically what an interesting test is just importing the entire blockchain using basically right by reprocessing a brick transaction mm-hmm a lot fast thinking rather doing a full archive sync and seeing what your where that goes exactly and you know I'd be interested in seeing comparisons of that and the is like the clients that existed before yep okay any other opinions on that okay so what it's
sounding like is that we could so super conservatively we could go later October otherwise we could go four points three five or four point three seven mil and four point three five would be something like October ninth ish and four point three seven was that October 12 ish nobody like sixteen Fisher so and then four point four would be I got over twenty five fish four point for October twenty-fifth ish okay four point four son seems to be quite close to the DEFCON 3 I'm sure it's the best time maybe some some people might be in the
transition already okay that's a good point so we need a couple of like more days yeah I think four point four especially yeah because of DEFCON and other commitments is probably too far the sixteenth might even be a little bit I in my opinion I'd still go with the ninth just because between now and then we can coordinate stuff being thrown at the blockchain and so I don't see that must much risk because that would mean the test Nets running for three weeks at that point and obviously if we find a problem we can then extend that date like whenever we want but if everything
goes perfect which because we're the best developers ever it's going to go absolutely perfect with no problems at all then yeah let's see so four point three five is October anybody else have opinions on that um yeah by the way if you want to really know that I ran the Ice Age script for 135 is on the ninth 4.37 is on the 17th beans 4.4 is on the 27th no what was 4.4 again you said 27th yeah okay yeah I know I can admit no it's I guess it's definitely a good argument that 4.4 is a
bit too late so it seems you know 4.37 but it seems much more plausible hmm yeah that's only that's what like a week after a week in a day yeah okay a week in six hours because it's the evening on the 9th versus like the 0 0 30 in them in the morning on the 17th so what would 4.36 be um the 3rd teams wonder if that's a Friday that will be fine oh cool it's a Friday Wow Friday the 13th so you're wanting bad
luck and if anything goes wrong it's a weekend okay fine all right let's let's see here that would be really cool though I like that date but nope no we can work yeah I think the 17th would be fine that's a week delay but that's not even really a delay in a way because we get a little more time to throw stuff at the tests Network let's see what YouTube chat is saying YouTube chat thinks 3/7 so it can be Friday the 13th but we're not going to go with those people sorry if I called you those people everybody on the Internet
so three six sounds like we're like what Vitalik is leaning towards anybody else have opinions you know 360 is the Friday the 13th did oh sorry sorry 3/7 is what I meant okay uh I guess if no one has opinions let's just say 4.36 right now yeah like everyone like seriously everyone's cool with that yeah it would be October 17th oh sorry I said
three six again it would be the 13th Reese's so I'm gonna put in my notes not the state so the 17th is what I meant so the 4.37 million is the block number October 17th would be the date that Vitalik is proposing that's good yeah I'm okay with that too so the 17th yeah okay now you know that people need to be saying 37 so all right we have consensus from YouTube people maybe we should ask fortune as well oh no man that reference as well yeah they probably would let's
let's get back on track so right now let's let's just say four point three seven which would be October 17th ish timeframe so we can have a little bit more time to test and throw stuff at the network if anyone has any other opinions bring it up in the coordinate Channel or we can bring it up next meeting I don't think at this point if we decide this will shorten it though so as of now this is the final the final block number and before clients are released we'll verify that in chat mm-hmm sounds good cool so there's a few other extra items we don't have to go through all of them if everyone can refresh their agenda page I added a few more that were put in comments the first one is gonna be snappy compression let me see what
progress has happened on that EIP there's also some really good reddit discussion over it I don't know who's seen that or not um and your name is there a link to the rennet discussion yeah let me go find it real fast while that's happening Peter any updates on that or other opinions you've heard and then we'll go to our Katti and other people who've commented Piper's not here though so actually two people actually there were in total four comments or four people commented about that about more interesting comments x''k was saying that yeah so x'q was worried
whether I just one moment I just have to come through it anyway so all in all as far as I know everybody likes the idea apart from Arkady unfortunately he did not reply to my questions for 14 days now so the fact that yes last time we said let's postpone so that we can discuss on github was completely useless okay so yeah it looks like let me see sorry my cats messing around with stuff I'm getting distracted elegant solution so yeah if you want to just summarize in like a couple sentences Peter then
Arkadiy can kind of talk about it now yes currently oh sorry it's gonna be EIP I should have like announced it it's a IP 706 for snappy compression that was the one where you had mentioned that you were in favor of having it be a sub sub protocol rather than something that goes across clients oh yeah so I still think it should be good but yeah I mean if the majority thinks could be simpler to just a neighborhood conditionally so just basically the counter-argument that I brought up is that from from so without considering it too much it might be a
reasonable requirement to have which enabled per soprano individually the problem is the practical problem is that our handshake so the Deaf peer-to-peer handshake does not support adding capabilities to support goals so if you want to add such a field then it means we need to upgrade deaf peer-to-peer handshake again and last time it took us about two months of coordination and I think Felix had to implement the update for Python and C++ too and we needed relief on all clients to make sure that everything worked correctly so that's what you're still going to updated version right well of course but the handshake so and we don't
need a new handshake for it and even if we if we need it the handshake message itself can be extended so it is backward compatible the new so we can add arbitrarily many new fields to the handshake and every client was still accepted but if we add anything to the capability is part of a head shake that the client will immediately reject it so the network would fall apart upgraded another player unless the first is in the old version which is compatible manager yeah but you need to parse the handshake to actually read the version numbers and if you modify the handshake you cannot pass it anymore okay that's a good point and so this was one of the counter-arguments of a hidden
complexity and the other one that at least as far as I know Snap is really fast if something cannot be compressed so for example to go pure commercial apps that we can compress at around 15 gigabytes per second JPEG images essentially its mem copy so I don't think it really weighs much that we do we compress encrypted data for example in the case of whisper okay yeah I'm the only two things I want to bring up Peter if you could click on the link I just put in chat someone on reddit named also Mahler
said he had to I guess concerns one of them was compression overhead which might result in redundant cases which I think as a point Arkadiy brought before but the other one which I hadn't heard before is that it's saying compression of data could weaken encryption of that data especially for other protocols utilizing aetherium like like client and whisper there might be information leaks but I'm not technical enough to understand that piece of the argument if anyone can elaborate on kind of what this redditor was saying that'd be great hmm so I I don't really see why there could be data leak because so basically after we compress the encryption the DEF
peer-to-peer encryption have to happens afterwards so I'm unsure why it would leak out yeah I saw this there's a misconception if either compression and then encryption then you can update that expect to do encryption and then compression it's no problem I see okay encryption and then compression they cannot compress encrypted data new person has to come first for compression be useful yeah but then you get problem with data me right no but no but like just impressing after encrypting just is totally completely
used was right in there but in Korea and if is good if it printing but more compressing is necessary then we can't compress at all so I'd rather like figure out I mean I understand whites for example they can this comment it says that with the live client information might leak but why is that even relevant so one hand interested in seeing exactly what the data we saw I think it's for client earths for protocols at least whisper that's still in progress right whispered does its own encryption whisper encrypts everything itself so
from that perspective snappies will just be a bastard okay anything else but Alec just think of anything no okay cool any other comments on this yeah I'd like to point out that I mean the depth we know that there are problems with encryption and a key management so if there is data which definitely should not be leaked then it shouldn't really shouldn't rely on that encryption line okay that's a good plan just to make it kind of a practice that we push for that
we tell people to do to not to not put encrypted data on there afterwards if I understood correctly cool so I think that that is confirm then if clients could implement that and Peter if you want us to kind of in future meetings bring that up thanks everybody in our Katti and everyone else for the discussion and yep that's approved and I swear if my cat knocks over another thing all right I'm not gonna murder a cat on core dev call though let's see what's the next item plague yeah Zuko was supposed to be on this call but I don't think he could make it um Vitalik
I think he mentioned he talked to you so would you be able to prime rate on what his thinking is yeah so basically the idea is that Blake is a hash function that I mean in he definitely says it's the most several times faster than three you know several times more compact than sha-3 is so in fact like he would even recommend just like aetherium switching from short shot to be over to Blake entirely at some point but if we were to consider something like that then the right time to do it would be something like the sharding switch so that would be much like much later but even still the reason why he uses it is because because the function in general for zika snark applications and for any kind of
general purpose or knowledge proof is like the overhead on like individual gates in or in any computation is extremely high and so you really wants to use hash function that are as efficient as compact as possible and switching to Blake is part of what could like really take down the proving time of just any kind of snark application so this would be things like Zika is likely zelich if your knowledge Prewitt readable tokens that Christian was working on a while ago having the ability to and also any kind of a theory em chain and Zika chain interaction stuff Blake would make either of those
I'm so much more efficient so this would be a primitive that is added added for Constantinople you can stand to Noble or serenity I mean it's like any of these could be I could be added later on a theme if you really want to okay other opinions or I should be specific other opinions on if adding this to aetherium is a good idea or something that or if there's a people should think it would be Constantinople Ertel or later yeah if there are any similar
functions which would enable other interoperability with example Monaro things like that and if we should have discussion about what primitives we would like to have online both inter integrations will be possible we have X or Y you know I cut out on the last part what you said Martin what was that now I think we're being think no what what different primitives would enable wok integrations across thing yeah that's a good point
um any clients on the call as their concerns about their or actually I mean really everyone should be given a chance to look and see what you know how it would be implemented and stuff before we go much further with the discussion but is that kind of what you're saying we need to see how difficult it would be for clients to implement mm-hmm okay so here's a good thread on so I posted a link to something Zuka sent about hash functions and I'm also going to send the EIP it's also listed in the agenda that gives a good history because this is a very old issue it's one of the first di peas from 2016 and it was made by Jayden Hess and he is at Cornell right now but
I talked to him yesterday and he said he'd be happy to help get this back up to speed and he can work with anybody from Z cash or anywhere else I think I'm gonna be working with J from Z cash to kind of guide her through the process of updating the CIP and getting it to the standard that we used today so I'll be doing that so we can have a more formal discussion in the future it's still early enough we don't need to make any decisions today we'll just keep discussing this cool if there's no other comments on that I think that VIP 718 was mentioned in a comment on the agenda and I have a link to it if you refresh
the agenda and that was from what was that from I think left Harris and he's not able to be on the call so we can postpone it for next time if no one has any thoughts on it but there's a a IP called 718 and it's purpose is to see there's like an idea to actually nope this is above my head does anyone have a have a yeah summary of seven seven eighteen seven eighteen I think basically the idea is right every s voted record must be Watkins all termination of the frame so it's
basically an anti reaction see thing is probably how I would interpret it Oh God while this medium force is inflammatory I was it linked in the VIP or a separate thing where it was linked this is the formal proposal here is rather emotional rationale medium post and likes to likes to the area of the etherium fraud subreddit um that's great okay so yeah I think we all need to look at this a
little bit more so I'll bring it up in the next meeting agenda oh yeah if you have any other comments Dalek so my instinct is that like we need more features to do this sort of thing but I do feel like the things that we do is should be more should be more backwards compatible than this basically like I'm afraid that if we try to make kind of naive clutches to try to mini storage and not to make storage not editable in this way then you know it will end up breaking things in other places gonna lens out making things like more and intuitive so in general my preference for just dealing with these reinsurance II attacks has to happen basically a
combination of adding new primitives that meet that allow people to write code in the kind of safer ways that doesn't it doesn't invoke them so one in one example is static call and another example that I think we should go - its async call so basically a call accepted execute out it executed asynchronously after all he existing calls are finished and the second thing is basically just making modifying programming languages and making more restrictive programming languages to require those kinds of things yeah one thing that the Christian mentioned or it was Nick you mentioned earlier in the if was ability to do a femoral storage that you don't have to pay as much for two
different a store then you could implement mutexes using this ephemeral storage which lasts for the duration of transaction much cheaper than if you would implement the same thing using a stores okay any other comments on that memory is for say that one more time isn't that what memory is for yeah but but you lose memory when you go to the next call frame and if you come back later on to the real currency you don't
have the same you have a clear memory this would be kind of in the middle we're in the middle ground between memory and escort be ephemeral but not bad ephemeral yeah okay any other comments on that again it's above my head so I don't know when discussion wraps up thanks Martin so the IP 215 was brought up by Alex Alex is on the call I think are you on in here Alex
yeah sweet take it away I think we discussed it probably three calls ago and nobody was really against it and there's one one thing has changed since we changed the operands swap them and so the top item is the number of bits we are shifting the value which is the second item from the top that's it and that basically is it doesn't follow many of the arithmetic functions in operand order but it it feels like it makes more sense and that the value we are or we want to shift
already is on the stack by the time we want to shift it so basically it will avoid many cases as well so I guess the question is is any comments on that one yeah I think that Pavel NIC and Greg of look did it Greg you still think it's a good idea takes time to unmute the microphone yeah I don't I haven't changed my mind cool Pavel yeah all right cool anybody have any other comments or any anything
against it otherwise I think it can go through alright great this can go through then we can make note of it and the EIP s we've been doing a bad job of updating it quick enough so if we don't update this Alex just bug me at Casey and Nick or any of the other editors until we update it what do you mean by update oh just like put approved on the on the PR and like merge it alright thanks I can do oh yeah awesome Greg of course let's see yeah don't
merge it yet I think we have to clarify one wording let's see so there were the last two things were something that Christian brought up his comments but he wasn't able to stick around so he said he said if anyone wants to discuss this feel free otherwise we can postpone and also I think left Aris just joined left Aris could he hear us yeah yeah perfect we actually already discussed your point but if you want to bring anything up about it you had the 718 right no no I just wanted to to join to see if the
statist thing was discussed just for that don't mind not a problem just in summary basically we just need to look at it a little bit more and maybe get it a little more formalized but as of right now there's not you know I didn't hear a huge amount of interest in it but we can bring it up in the future because it's it's interesting or it brings up some interesting points know lobster's talks about the status field right yes so I said what about the mmm courtesy locks it snowed the looks yes I see no statuses decided Martin what it was decided that it would be status rather than status code right as an end Oh perfect yeah no I left there so I was
talking about the thing where he said it interesting he IP raising the question of concurrency and locks I was just saying we already discussed that but you can chime in with anything you were thinking about it nothing in particular is that it would be nice for others to say their opinion oh sorry I'm talking and I'm muted I was
saying the last two items are Christian and he was going to want to bring up account abstraction again and how the tool set providers think about it and if there's a better solution in the meantime could anyone elaborate on that if not we'll just wait for Christian next time and then the next thing and I think Martin commented on this is a way to reduce gas cost for an S store that's item 7 what it is if that slot is destroyed at the end of the transaction so ephemeral storage so this actually I think is what we also talked about it 718 is that right Martin yeah we can hash it out though we eats and then take
the discussion later on yeah ok great so just to recap the thing that we discussed earlier 4.37 million is the pretty much final block number for Byzantium unless things go wrong on the test net in the next four weeks or at this point about three weeks that would be around October 17th roughly which would be a Sunday Monday or Tuesday I'm thinking and is there any other points of discussion off-topic agenda items or anything real quick let's have Daniel go first and then Dmitri yeah Daniel what's
question okay so my question is about the ERC process so if somebody creates a poor request with an e rc document what is the process of it getting merged Casey is your microphone working oh can you hear me yep we can hear you I was gonna comment on it but I guess I'm I want to get your perspective and Greg's perspective as well we the EIP editors have discussed this in the past and I think we have kind of sort of landed on something so Casey if you wanted to elaborate on that otherwise I can't or Greg can um well my perspective is that we really don't have
a well-defined process for ERC's so yeah we actually so we just finalized ERC 20 though just because otherwise people are going to argue over the spec and I think that finalization does need to happen okay Casey does have a slightly different opinion but that's cool too the only other ERC we finalized is the one for F p.m. and how that went down is that Piper Miriam came up with the spec he wrote it down he got people from all of the relevant tool sets and frameworks together so he runs he did populous and I think he got truffled Apple embarked and maybe even someone from the remix
team on board to agree to having that as the standard for aetherium smart contract package management and so that ERC got approved the other ERC that got approved was ERC 20 we pushed that through recently so I think this might be written an EIP one but in general you come up with an e rc you format it in the way that's defined an EIP one you get peope relevant people from the community who would have a stake in whatever decision is made or just thought leaders to comment on it and after some discussion and evaluation it becomes approved if it's implemented I think in at least two instances it's
it's yeah it has to be it basically has to be implemented or demonstrated in some way so people can't go on and just say I want to theory him to be called apples now so yeah so basically it's a community standard so you can kind of do an e rc and then just kind of say it's done if you want but if as far as officially being done we don't have like a super like a super strict standard on that yet Greg what are your comments whoa hey we can hear you now you can okay it's one of these stupid interfaces where the controls disappear then you move the
mouse around and if you're lucky they reappear they haven't reappeared but apparently the microphone turned on anyway um I don't have any comments except that I don't know what the process is either all right we should definitely shore up that process so I'll put that as a to-do list item yeah and I think if people have proposals for for the you know for the process whether the two models I've seen are either more like a IPs or the Python Python PE piece or more like IETF RFC s where you know we're free to define the process however we want so
rather than asking what is the process you could also propose a process yep exactly and we actually just got recently got a new e IP editor Robert from the parity team so yeah we're we're hoping to get stuff back on track with the IP soon and then Dmitry did you have a comment community everywhere now it's a little bit echoey but yes we can hear you going to talk about the difficulty test says that we decided to implement difficulty
test like we did last half of all that we just took the same format just one line meaning the ash of the below Conchas and there is this you could calculate the difficulty of any blockages everything the stick from the tracer file this is with such tests does not define the blockchain parameters that might be an issue these contexts and those tests not executed on high and I don't know how many clients you'll use those tests unless we force them to use
it and to solve that it has an idea was your cheat or change them blockchain test so they they could start with the genesis number of like thing in england from that point it could be for 20 months of law and you could crop motion test starting from the point that we need to test a difficulty formula form but that might require implementation of such a thing reading from jason conflicts or Jemison to start from block X the difficult test we can't implemented by easier what what you think on that is there specific
people you think would be apt to respond to that I'm not sure is anyone in here Martin maybe yeah defer to Peter or our kidding it spontaneous it sounds very simple to take a block number from the but that works like don't be work like that even now I'm sure yeah we don't it would be simple to do it though Dimitri how does it work today compared to what you're proposing today blockchain test has the genesis of number zero does Howard Hawks on high if we change that I don't know
what will be the parity - another clients might be they won't be able to do it without special limitation so right now we have just difficulty test in the test repository in the basic test folder the difficulty and the network name Bob Jason test containing a series of inputs and outputs or difficulty formula that's how we did it last time for all steps is basically the same the transition blocks but to be honest I think if clients do not support this
currency maybe it will be a valuable addition I mean to be able to set the block number of the Genesis block I know it's a bit maybe it sounds a bit weird but if it helps testing a lot then maybe it's simpler to just support this instead of hacking all future tests a bit so that they can run yeah so Arkadiy what what is how does parity work today in regards to this thing it's already configured I mean if not the season option okay that sounds good what about C++ or what about you guys
don't we have to implement this feature Jemison mm okay and it sounds like Kathy y'all can do it too Peter yeah sure so it's nothing plan time it should be simple enough for anything okay Vitalik what about pyah pyah pyah pyah app pius so basically for testing if you can make it so that you're not always using zero as the Genesis block and make it for the test cases make dynamic is what I understood it is doable uh-huh
and I can check okay and I think what would need to happen is next coordinate meeting we go through this again and Dmitry if you could write up a couple paragraphs about how we currently do it versus how you're proposing we do it in the future it sounds like most of the major clients can already said that they can do it but just so that we can go through each client next meeting write up a few paragraphs and send them to me please I don't think that's neat I think if Mitra just creates the test which relies on that and we would see if it doesn't some however not all right even better the only she opened in the test depository about that and the NASA pod
is pretty similar his proposal to make it optional for the blockchain test the difficulty of constellation algorithm currently is blocking test requires mining of log difficulty is checked for every block engine so what we are think of is to do it customizable or the blockchain test which would be checking the difficulty will consist of actual blocks that's mine and if it doesn't require difficulty then you don't have to mind blocks and we
spend a lot of time and what he or she does I mean it's law because of their I don't fully agree with this so the point of hi would be that it's a black box tester so that it runs exactly as the client runs in normal circumstances if we start adding features to disable certain things then we kind of lose the whole point of the black box system I would agree with that well change in Genesis envelope is kind of another leg walk so it would be
outside of hive is what you're saying to me treat or would be in hive only you know currently I guess and normal the client starts with the Genesis no pickles vo so would that affect this idea of hive being a black box tester Dmitry racing was implementing that import from snapshot maybe that function requires a Genesis for be non zero it will require supports snapshots and it should have case you
have any thoughts on that or or Tim or Jared or anybody yeah I do think the supporting in Genesis block numbers greater than 0 in hive can still be considered a black box feature but I would like to get Peters opinion on that no I think that's completely fine so that's basically just allowing the clients to whenever you just initialize the chain allowing the clients to have to specify a block number I don't think that's any inherently wrong with that one of course clients might break if you start using Networks Inc etc etc using that so I
don't expect clients to do any meaningful testing so that it actually works on live networks but just importing blocks on top of a non zero block I think it should be fine it's much less invasive than for example adding flags to disable certain consensus features okay so Genesis talking from custom block number is okay and blockchain tests doing the desirable binding features yeah that sounds like what we reached here anybody have any other comments Martin you were saying
that it didn't like kind of comply with the definition of black box testing but you have any change thank you those words but yeah I kind of agree I mean there I think there is a flag today to actually disable it I ideally we shouldn't run black box testing like that yeah so you're saying here's how to help it that's the rate is so intense that I mean we have to after but ideally should I'm not really following why is the test generation so in terms I guess it's more to the CBP issue at the moment below an absorption test open working
class request hard drive access and it's tourism blog and I guess mining should be something you see we're doing it on a yes might even something is my assume is that in CDP client my assumption is that the syndicate mining said require at least one second to joy even in a wannabe difficulties new Centennial's and the another place where city like spending time is reading reporting from the contract
oh we have like 50 hours sweet more all the more capacity hair country it's about 10,000 well we do love snow 10,000 seconds is spent on the test execution alone 50 hours needed to generate the motion test 50 hours in the crime that sounds kind of insane sounds like a long what was that Martin well I got the
impression that though they did it sounded like it something could be optimized it wasn't inherently yo itchy you know I had this moment this man second pop rock thing I removed that time Dmitry's is no but I at least removed one steep one second okay so this might be something we should bring up next
meeting maybe anybody have thoughts on that that this is also another technical issue that I have trouble assessing consensus on some my opinion what could do is which should see what the bottlenecks are because obviously it shouldn't take that long and try to fix it and in my opinion if it's if it's a if it's still an issue meaning that it takes a still that's a half a day and I think it should be we should be able to just set up a small build job that spins up kubernetes faster maybe four machines just generates the test in one hour and then just rinse them off so I don't
think this should be a problem to paralyse know every yeah and then Arkadiy you already said that you could do it right it if you're talking about Genesis yes yep exactly yeah okay great let's just say we'll do it then that sounds good to me so yeah I think that that's last gen item does anyone have anything else cool alright thanks everybody
see you at the beach eat you have anything else yes I just was walking on it father I just started thinking that do we want to meet father coverage because okay anything else all right thanks everybody
we'll see y'all in two weeks he wants to speak oh sorry I thought that he said that it was a man I think I misheard him go right ahead Dmitri my question was about the father the father and he could integrate that into city big client and potentially could create some new test cases that we are unable to cinco and do we want those to be done before okay so the question is that Casey has a
buzzer that can be implemented into the CPP client in order to find new no test cases hey go ahead Martin yeah so it's Vito and he is already working for us to implement this and find in test cases so we're hoping that that pays off before on the maintenance was anything particularly you were wondering I don't understand the question Dmitri did that answer your question Dimitri mine said it already works which means
we have Guido is working on the lib foster and passing all the clients using a different approach than we've been doing ourselves best if he's doing good progress and I hope that finds and issues that we don't find with our manual tests we have a couple of passing approaches and we hope to get them both up and running before yeah before black one point or four point three seven yes we'll be turning testily okay so any
other concerns with that it sounds like I can go in before the actual hard fork right yeah a lot of fussing is running this is mine running and the Guido's and meat race so where are we doing all the count with us nothing compare that with the manual okay great anybody else have comments or did that answer your question Dimitri no se man could you repeat yourself and get a
little closer to the mic it was hard to hear you okay I haven't seen at least one test out of buzzer what is the progress yeah we can discuss this in the fastest Channel and get her yeah Dimitri are you in the first test channel I I think that was created fairly recently or months a few months ago yeah perfect yeah let's let's take discussion there for the fuzz test stuff but the fuzz testing is a really cool tool from what I've seen of it and the clients so okay cool anybody else have anything all
right great see everybody in two weeks goodbye [Music] [Music]
[Music] you