-
sech1
.merges
-
xmr-pr
9287 9345 9357 9380 9414 9416 9421 9425 9426 9429 9430
-
sech1
so when do we plan a new release?
-
m-relay
<rottenwheel:kernal.eu> Ask in today's meeting?
-
m-relay
<rbrunner7:monero.social> Quick reminder that we will have a meeting here today 18:00 UTC, not anymore in #no-wallet-left-behind:monero.social. Announcement:
monero-project/meta #1053
-
selsta
sech1: luigi is away after wednesday for a bit
-
selsta
so we'd have to tag before that
-
sech1
And gui? I want to release p2pool 4.1 before that
-
sech1
I guess the time frame is the same for gui
-
m-relay
<ofrnxmr:monero.social> We should keep this room for current repo stuff. Todays meeting probably an exception, but stuff that isnt on the repo should be in a different room.
-
m-relay
<ofrnxmr:monero.social> i suggest renaming and readderessing nwlb to monero-next/upgrade/evolution, and doing the meetings there. -dev for current repo work, -next/upgrade/evolution for in progress dev work that is not on the repo, and mrl for ideas/research
-
m-relay
<rbrunner7:monero.social> > We should keep this room for current repo stuff.
-
m-relay
<rbrunner7:monero.social> Why would that be better? What issue, what potential problem would that solve?
-
m-relay
<ofrnxmr:monero.social> nwlb is the place of discussion fkr the topics, it should be the place for the meeting
-
m-relay
<ofrnxmr:monero.social> Problem is that nwlb is named incorrectly, its not just a wallet room
-
m-relay
<ofrnxmr:monero.social> And doesnt have monero- addressing
-
m-relay
<rbrunner7:monero.social> If we move FCMP discussions between meetings to here as well, things are ok then?
-
m-relay
<rbrunner7:monero.social> We are hell-bent to introduce and hardfork to FCMP *as soon as possible*, right?
-
m-relay
<ofrnxmr:monero.social> no, fcmp has 0 prevalence on monero-project/monero. Fcmp and seraphis should be in monero-next/upgrades/evolution (aka nwlb)
-
m-relay
<ofrnxmr:monero.social> Its not finished, not even in review stage
-
m-relay
<rbrunner7:monero.social> Why should GitHub repositories and their content or content that is missing there decide what we should or should not discuss here? I am pretty confused about the approach.
-
m-relay
<ofrnxmr:monero.social> future protocol upgrades already have their own place of discussion, its just lost due to the naming if the room
-
m-relay
<ofrnxmr:monero.social> The same reason nwlb even exist, rbrunner.
-
m-relay
<rbrunner7:monero.social> Is this room overflowing with long and complicated discussions?
-
m-relay
<ofrnxmr:monero.social> The logic of "move meeting to -dev" woukd also apply to "delete nwlb and move all discussion about seraphis and fcmo to -dev"
-
m-relay
<ofrnxmr:monero.social> Nwlb is
-
m-relay
<rbrunner7:monero.social> Apart from deleting what has historical value - yes, let's move!$
-
m-relay
<rbrunner7:monero.social> All Monero development
-
m-relay
<ofrnxmr:monero.social> I disagree
-
m-relay
<ofrnxmr:monero.social> its not monero development until its on the repo. Seraphis is 2+n years away
-
m-relay
<ofrnxmr:monero.social> Fcmp likely >12 months before hitting the repo
-
m-relay
<rbrunner7:monero.social> And that's why we are not welcome to meet here weekly and discuss FCMP?
-
m-relay
<ofrnxmr:monero.social> Yes
-
m-relay
<rbrunner7:monero.social> Strange
-
m-relay
<rbrunner7:monero.social> Where is the benefit, the win, the improvement only to discuss things here that are "in the repo". I ask again, is the room overflowing with too much stuff?
-
m-relay
<ofrnxmr:monero.social> nwlb should be a room dedicated to upgrades that arent on repo yet
-
m-relay
<ofrnxmr:monero.social> (nwlb should be renamed and readdressed)
-
m-relay
<ofrnxmr:monero.social> The benefit is the same as "why we have nwlb" or "why we have mrl"
-
m-relay
<ofrnxmr:monero.social> We dont have mrl meetings here for the same reason we shouldn't have seraphis or from meetings here
-
m-relay
<ofrnxmr:monero.social> Seraphis or fcmp*
-
m-relay
<ofrnxmr:monero.social> Re overflowing: no -dev is not, but mrl and nwlb are
-
m-relay
<rbrunner7:monero.social> I can't follow. The MRL and the MWLB rooms are overflowing with too much stuff? Like, right now, this week, last week, last month?
-
m-relay
<ofrnxmr:monero.social> Should we do mrl meetings in -dev?
-
m-relay
<rbrunner7:monero.social> If I say no, I have lost?
-
m-relay
<ofrnxmr:monero.social> Yes
-
m-relay
<ofrnxmr:monero.social> :)
-
m-relay
<rbrunner7:monero.social> Thing is: It seems, at least to me, that "research" and "development" are quite easy to make into two heaps. If you want to part "development" further into sub-heaps, you arrive, IMHO, exactly at the situation that prompted the resurrection of general-purpose dev meetings of yesteryears: Something will always fall through the cracks.
-
m-relay
<ofrnxmr:monero.social> -dev meetings can still resume, but should focus on releases, triaging issues and prs, dev reports and potentially dev ccs discussion
-
m-relay
<rbrunner7:monero.social> If you ask me, we will see pretty fast whether we are on the wrong track: If we have, after broadening the scope of the meeting, so many things to discuss that people lose overview and 1 hour is hopelessly too short, it's clearly "back to the drawing board". If we fare ok with a single meeting, well, "simple is simply simpler"
-
m-relay
<rbrunner7:monero.social> If you have so many things to discuss in a dev meeting as you see it before your inner eye, why aren't there such meetings?
-
m-relay
<ofrnxmr:monero.social> because i was banned
-
m-relay
<ofrnxmr:monero.social> :)
-
m-relay
<rbrunner7:monero.social> Oh, plot twist
-
m-relay
<ofrnxmr:monero.social> i had no comments to make / no observations to observe. The above is how i think dev meetings are best served
-
m-relay
<ofrnxmr:monero.social> they dont have to run an hour either
-
m-relay
<rbrunner7:monero.social> Well, I am curious whether others will read and leave their opinion. I think I get your general idea now, but I still don't see enough improvement compared with a dead-simple meeting discussing all things Monero dev, whether on repo or off repo or whatever
-
m-relay
<rbrunner7:monero.social> And with the meeting right here. The channel will bear about 300 new lines from the meeting.
-
m-relay
<rbrunner7:monero.social> I am not sure you are fully awary how shy a kind of animals our real devs are, the ones actually writing C++ and Rust code. With too many meetings and too many rooms you don't win but they just run away and hide.
-
m-relay
<rbrunner7:monero.social> And after all discussions are not at all restricted to this room, or 5 other dev related rooms at that. Proper place for dev related discussion are, to a large extent, GitHub issues.
-
m-relay
<ofrnxmr:monero.social> Mrl, upgrades/next, dev
-
m-relay
<ofrnxmr:monero.social> 3 rooms, 3 tiers of development, 3 distinct crowds, 3 purposes
-
vthor_
"And that's why we are not welcome to meet here weekly and discuss FCMP?" , "Yes" :o
-
moneromooo
FWIW I consider this canonically on topic.
-
selsta
sech1: can you release that today?
-
sech1
yes, I'm waiting for CI to finish building the binaries
-
sech1
-
m-relay
<0xfffc:monero.social> My vote is to have the regular meeting in another room. Not that it is unrelated to here. No. It is just this room is extremely crowded. And there is always Q/A going on.
-
m-relay
<rbrunner7:monero.social> Meeting here (at least for today ...) in a bit less than 1 hour
-
dEBRUYNE
Arguably having the meetings in the 'core' rooms will increase visibility and participation
-
dEBRUYNE
Having the meetings scattered across many rooms will probably reduce participation
-
scoobybejesus
plus, discussion related to the major refactoring being done to allow for future code additions is arguably pretty on topic
-
m-relay
<rbrunner7:monero.social> 10 Monero devs with around 20 opinions :)
-
m-relay
<farooqkz:mozilla.org> one day in the coming years i am getting involved in at least one of these:
-
m-relay
<farooqkz:mozilla.org> - some crypto development(xmr? bch?)
-
m-relay
<farooqkz:mozilla.org> - some kernel or firmware development(linux? freebsd?)
-
m-relay
<farooqkz:mozilla.org> - some compiler development(sbcl?)
-
m-relay
<farooqkz:mozilla.org> the idea is trying a new method of programming to tackle with problems which require a total new mindset, different than what i had till now.
-
m-relay
<farooqkz:mozilla.org> one day in the coming years i am getting involved in at least one of these:
-
m-relay
<farooqkz:mozilla.org> - some crypto development(xmr? bch?)
-
m-relay
<farooqkz:mozilla.org> - some kernel or firmware development(linux? freebsd?)
-
m-relay
<farooqkz:mozilla.org> - some compiler development(sbcl?)
-
m-relay
<farooqkz:mozilla.org> the idea is trying a new method of programming to tackle with problems which require a total new mindset, different than what i had till now.
-
m-relay
<farooqkz:mozilla.org> to be precise, in exactly one of these
-
m-relay
<ofrnxmr:monero.social> <dEBRUYNE> Arguably having the meetings in the 'core' rooms will increase visibility and participation << nwlb would become a "core" room
-
m-relay
<ofrnxmr:monero.social> its current name and status is foggy as best
-
m-relay
<ofrnxmr:monero.social> Its like "where we put everything that we dont know where to put, because its neither -dev or -mrl"
-
m-relay
<ofrnxmr:monero.social> the same argument for creating nwlb is the same argument for expanding it to encapsule more than seraphis wallets (which it has already done, by becoming the come of all things seraphis, fcmp, and any other not-yet production items)
-
m-relay
<ofrnxmr:monero.social> The only thing that needs to change is the room name and address, from nwlb to monero-pickaname
-
moneromooo
How about #monero-devel ? We'll make fedora and debian people both happy.
-
moneromooo
Windows people can stay in #monero :D And #monero-gui for Mac users.
-
m-relay
<rbrunner7:monero.social> What does "devel" stand for? Just "development" abbreviated a bit differently?
-
moneromooo
Yes. Headers are in -dev packages for debian and -devel packages for fedora. Or vice versa, I always forget.
-
m-relay
<rbrunner7:monero.social> So all clarity successfully eliminated :)
-
moneromooo
Thank you.
-
moneromooo
Just to clear something up for me, some version of fcmp *will* most probably end up in monero, barring unforeseen problem, correct ?
-
m-relay
<rbrunner7:monero.social> Yes.
-
moneromooo
Thanks.
-
m-relay
<ofrnxmr:monero.social> After audits, testing, and scaling is sorted
-
m-relay
<rbrunner7:monero.social> Meeting time. Hello!
monero-project/meta #1053
-
m-relay
<jberman:monero.social> *waves*
-
m-relay
<sneedlewoods:monero.social> hey
-
m-relay
<one-horse-wagon:monero.social> Hello.
-
m-relay
<vtnerd:monero.social> Hi
-
m-relay
<dangerousfreedom:monero.social> Hi
-
sech1
Hello
-
m-relay
<0xfffc:monero.social> Hi everyone
-
tobtoht_
hi
-
sech1
Is there an agenda for this meeting?
-
m-relay
<hinto:monero.social> hello
-
m-relay
<ofrnxmr:monero.social> No
-
m-relay
<jeffro256:monero.social> howdy
-
m-relay
<rbrunner7:monero.social> Before we come to the reports: We have a surprising amount of ideas floating around how many dev meetings with what kind of foci in which rooms we should hold.
-
m-relay
<rbrunner7:monero.social> I propose to keep discussion about this *out of this meeting*
-
m-relay
<rbrunner7:monero.social> I think we should use the time to discuss dev related things.
-
m-relay
<rbrunner7:monero.social> Meta-discussion about meetings should go, IMHO, in a new issue in -meta on GitHub
-
m-relay
<ofrnxmr:monero.social> Since were in dev, lets start with pressing dev matters.
-
m-relay
<ofrnxmr:monero.social> 1. We have to tag by wednesday
-
m-relay
<rbrunner7:monero.social> If people are ok with that, I can open such an issue later.
-
m-relay
<rbrunner7:monero.social> What is there to report from last week?
-
m-relay
<ofrnxmr:monero.social> Is everybody ready to tag, or are there any issues or PR's that need review or implementation asap
-
m-relay
<rbrunner7:monero.social> Can you please hold back for 5 minutes more, so we can get the usual overview who did what during the last week? Thanks.
-
sech1
I'll release p2pool v4.1 today which needs to be included in monero-gui v0.18.3.4
-
m-relay
<sneedlewoods:monero.social> added missing functions to the API, now just TODO's and QUESTIONs to fix, I think I can see the finish line, but it will probably still take a while
-
m-relay
<ofrnxmr:monero.social> Sneedlewoods, this for what?
-
m-relay
<ofrnxmr:monero.social> Seraphis?
-
m-relay
<jberman:monero.social> me: finalizing a draft PR + writeup for the fcmp++ integration, shooting to submit that PR by tomorrow. The PR so far includes a Rust FFI to use @kayabaNerve's fcmp++ crate, code to migrate existing cryptonote outputs into a merkle tree for fcmp++'s, growing the tree as the node syncs, an algo to trim the tree, and changes to the `cryptonote::transaction` class for fcmp++. I plan<clipped message>
-
m-relay
<jberman:monero.social> to also implement tx construction & verification, and consensus changes in that PR
-
m-relay
<system> file df_draft_fcmp_v1.pdf too big to download (1184797 > allowed size: 1000000)
-
m-relay
<dangerousfreedom:monero.social> df_draft_fcmp_v1.pdf
-
m-relay
<dangerousfreedom:monero.social> This week I continued reading the code and theory of FCMP. I still don't understand the details of the circuits in the `prove` and `verify` functions and the exact details to fetch and store the tree in the database but I will improve my understanding with time since I'm much more familiar with the code and terms used. I believe it would be better to try to do something concrete n<clipped message>
-
m-relay
<dangerousfreedom:monero.social> ow. Here is a draft of my understanding so far of some concepts. There may be big errors and imprecisions and it is still very shallow. Take it with a big grain of salt. I will improve it as I also improve my understanding.
-
m-relay
<rbrunner7:monero.social> @jberman: What will you PR against?
-
m-relay
<jeffro256:monero.social> me: polishing the carrot doc and soliciting auditors (I have one meeting planned thus far)
-
m-relay
<jberman:monero.social> master in core Monero
-
m-relay
<sneedlewoods:monero.social> Also started to prepare my incoherent notes of things I found during the API work all over the place and plan to create a github issue for that. Not sure if I should put it into monero-project issues though, because it's a bunch and I don't think it makes sense to create a github issue for everything I found suspicous.
-
m-relay
<rbrunner7:monero.social> So much about "future stuff" :)
-
m-relay
<0xfffc:monero.social> Me: since Wednesday I was reviewing different PR. The big one is reproducible build PR 8929. Which review is almost complete.
-
m-relay
<ofrnxmr:monero.social> off topic rbrunner, dont bait me
-
m-relay
<rottenwheel:kernal.eu> Will that go into a separate fcmp branch for the time being? 🤔 Can't be marged on master till it's ready, no?
-
m-relay
<ofrnxmr:monero.social> You asked nicely to leave that discussion out of this meeting
-
m-relay
<rbrunner7:monero.social> Alright, understood.
-
m-relay
<jeffro256:monero.social> It could be merged but not activated
-
m-relay
<ofrnxmr:monero.social> Similar to some of koe's seraphis preparedness prs
-
m-relay
<jberman:monero.social> @rottenwheel I'm thinking it could remain a WIP draft PR until it's ready
-
m-relay
<vtnerd:monero.social> Me: worked on socks v5 - adding ipv6 support to proxy requests. Also worked on LWS frontend API project
-
m-relay
<rbrunner7:monero.social> So soon people will be able to run their own LWS instances, are you nearing completion?
-
m-relay
<ofrnxmr:monero.social> They already can
-
m-relay
<sneedlewoods:monero.social> sorry ofrn, I'm slow, I think here you can get enough information what I'm working on in general
monero-project/monero #9368#issuecomment-2168451558
-
m-relay
<vtnerd:monero.social> They are already able to run their own LWS instances, there just isn't many wallets supporting it because there's a decent amount of work to tx construction in particular
-
m-relay
<rbrunner7:monero.social> I see.
-
m-relay
<vtnerd:monero.social> The LWS API is json, and is pretty straightforward I think
-
m-relay
<0xfffc:monero.social> One important thing is the PR 9404 [1] needs reviewer. The PR has been running on stressnet with different scenarios. And no issues has been reported. With this PR, we have instantaneous start up.
-
m-relay
<0xfffc:monero.social> 1.
monero-project/monero #9404
-
endogenic
i've already done all that work
-
endogenic
vtnerd and rbrunnner
-
plowsof
thank you endogenic
-
endogenic
i've told you this a few times, but i havent ever been contavted by vtnerd
-
endogenic
I told him a few times, but somehow we didn't end up being able to collaborate yet
-
endogenic
The problem is that I haven't published it yet
-
m-relay
<ofrnxmr:monero.social> endogenic, show and tell
-
endogenic
The only reason I haven't done that is because I don't have help
-
endogenic
you say show it but what happens is that everyone else is just going to use my stuff before I get to actually launch my own product - this is just because I don't have any funding or any help from anyone
-
endogenic
so it sounds a little bit like a Catch-22, but I swear that I have done all of the work already
-
endogenic
it's directly from wallet2
-
endogenic
i'm sure we can figure something out, but I literally am programming right now and I'm so close to releasing this stuff but I've just had to make it better because of the fact that all this other work is happening meaning I have to progress even further before I can release
-
endogenic
so if we had worked together, then I think it would've been released already
-
endogenic
it's just not fair to me either
-
m-relay
<rbrunner7:monero.social> Alright, looks like we are through with the reports. ofrnxmr , we have a pressing issue, tagging a new release?
-
endogenic
it's actually been really difficult
-
endogenic
to see this
-
endogenic
geez so cold?
-
m-relay
<ofrnxmr:monero.social> yes. We have to tag the new release by wednesday
-
m-relay
<vtnerd:monero.social> Is it in a private GitHub repo, or something completely offline?
-
endogenic
me? vtnerd?
-
endogenic
private repos
-
endogenic
yes
-
endogenic
long history
-
endogenic
many commits
-
m-relay
<rbrunner7:monero.social> Pardon my ignorance, why do we *have* to tag? Would a long pause result if we don't?
-
endogenic
i've been homeless at times.. and many other things no one would believe lol
-
m-relay
<ofrnxmr:monero.social> Im not sure about the reasoning dor 18.3.4, id have thought it should be 18.4.0 (?) Major minor patch, this isnt just a bugfix release.
-
m-relay
<vtnerd:monero.social> Then just make it public, it's the least friction. Theres probably no shot at keeping it private, it's unlikely people will support private wallet code
-
endogenic
I don't intend to keep it private at all
-
endogenic
it's not intended to be private
-
endogenic
it's just intended to be ready before it's released publicly
-
endogenic
But it puts me at a major disadvantage to release all my work when everyone else has so much funding and help
-
endogenic
especially because my work is actually pretty interesting
-
endogenic
I have a huge write up..
-
m-relay
<ofrnxmr:monero.social> and selsta would be the one to ask about "why" wednesday, im just relaying the message
-
m-relay
<rbrunner7:monero.social> Ok, do we have @selsta around, they may have the best overview what is needed in order to tag.
-
m-relay
<rottenwheel:kernal.eu> Endogenic has been delivering groundbreaking code since before the 2000s!
-
endogenic
vtnerd would you be open to collaborating with me privately on the lws support for 2-3 weeks max? then it all goes public
-
m-relay
<rbrunner7:monero.social> Is anybody here right now directly involved in that release? With contributing PRs that may still not be re ready?
-
m-relay
<rottenwheel:kernal.eu> He just hasn't been able because the life threats and lack of funding guys!
-
endogenic
rottenwheel please, man, you're going to eat your words
-
endogenic
you have no idea
-
endogenic
what i have been through..
-
m-relay
<ofrnxmr:monero.social> endo, please ignore
-
endogenic
lws support is done tbh
-
endogenic
on my side
-
m-relay
<rbrunner7:monero.social> rottenwheel, @endogenic, maybe this special topic can wait until after this very meeting?
-
endogenic
i just need to update ny client for vtnerds new api
-
endogenic
as you know he added spenda and recvs
-
plowsof
i think it both a negative and positive we have duplicated efforts around endogenics area of work/expertise. neg being the dupl efforts, positive being we have more than 1 developer who understands the problem and can pick apart each others implementation. but i think we should leave it at that for this meeting unless it is on the agenda
-
endogenic
this was one of the things I was going to announce
-
m-relay
<ofrnxmr:monero.social> create a private repo and invite vtnerd as collaborator?
-
m-relay
<rbrunner7:monero.social> Whatever does not derail this meeting. Please?
-
endogenic
The only thing is that vtnerd might have confidentiality agreements, or he might not be willing to enter into a confidentiality agreement with me
-
endogenic
that's why I was really trying to just launch everything
-
endogenic
to be honest, honest with you, it's going to be trivial for me to update my client to work with vtnerds new api format
-
endogenic
it's just that I was having a little bit of difficulty getting something compiling and stuff like this just takes more time
-
m-relay
<rbrunner7:monero.social> I don't have admin or any other special rights in here, by the way. If people insist on sabotaging this meeting, they will probably succeed.
-
endogenic
there's no communication between me and him and so I can't just ask him about stuff
-
endogenic
in other words, it's not like I'm paying him for his time so I don't feel comfortable asking him
-
m-relay
<ofrnxmr:monero.social> **Regarding the release** << are there any prs that anyone is trying to get into the release or issues that need to be resolved?
-
endogenic
we've asked a lot from him already to be honest
-
m-relay
<ofrnxmr:monero.social> Plowsof has matrix ops
-
m-relay
<jeffro256:monero.social> vtnerd: sorry I meant to address your comments on
monero-project/monero #9135 earlier this week; thanks for the review. In your opinion after looking at the PR's code, once those issues are addressed, do you think it worth including in the next release?
-
selsta
yes I'm around
-
m-relay
<vtnerd:monero.social> jeffro256: I recall it being pretty much ready for inclusion
-
m-relay
<ofrnxmr:monero.social> This is running on stressnet, but were unsure if it caused an increase in reorgs (?) Rucknium:
-
m-relay
<jeffro256:monero.social> Btw that PR is running on the stressnet currently
-
m-relay
<ofrnxmr:monero.social> The reorg increase _may_ have been due to a very poorly connected miner though
-
m-relay
<jeffro256:monero.social> I was looking into this too, I *think* there were just more reorgs this time around, but I'm actively looking into it
-
m-relay
<rucknium:monero.social> ofrnxmr: jeffro256 These was an increase in re-orgs around the time that we put that PR into release, but other code was put in release, too. It's not a controlled experiment.
-
selsta
rbrunner7: nothing is needed anymore on the -cli side, but if something is ready and well reviewed we can include it with the next round of merges
-
m-relay
<rucknium:monero.social> And miner behavior isn't a controlled variable, either
-
m-relay
<jeffro256:monero.social> There were already mass reorg messages before, but they didn't feel *as* common. Of course, there's been a lot of variables changed with the new fork
-
m-relay
<rbrunner7:monero.social> Sorry, Murphy's law. My cable modem just had the idea to reboot now.
-
m-relay
<rbrunner7:monero.social> Alright, seems I am back on track.
-
m-relay
<jeffro256:monero.social> Sorry I keep duplicating people's thoughts delayed by 15 seconds lol
-
m-relay
<jeffro256:monero.social> I will compile a stressnet node without the PR and observer reorg behavior
-
m-relay
<jeffro256:monero.social> At any rate, it appears that the nodes are syncing just fine even with the increased messages
-
m-relay
<rbrunner7:monero.social> @jeffro: I also saw the reorgs with a stressnet daemon without your PR ...
-
m-relay
<ofrnxmr:monero.social> (Reorgs have calmed down a lot on both new and old stressnet)
-
m-relay
<rucknium:monero.social> New stressnet isn't being spammed yet FWIW.
-
m-relay
<rbrunner7:monero.social> Ok, looks like we have the release and the tagging sorted, yes? At least as far as meeting participants are concerned.
-
sech1
gui is tagged separately?
-
m-relay
<ofrnxmr:monero.social> Rbrunner, spackle was having almost every block reorged. I hypothesise unrelate to jeffro's pr, and related to a poorly connected miner
-
sech1
I still need to have p2pool v4 in the next gui release
-
selsta
sech1: yes separately
-
m-relay
<ofrnxmr:monero.social> You had aksed "why wednesday", im not sure thats been answered
-
m-relay
<ofrnxmr:monero.social> I can only imagine luigi will be away for some time afterwards
-
plowsof
proprietary
-
m-relay
<rbrunner7:monero.social> Everything can run towards release without them after tagging? Surprises me a bit, but I don't know the details
-
selsta
rbrunner7: yes, apart from the auto-updater
-
m-relay
<rbrunner7:monero.social> GitHub compiles, or people compile repeatable builds, and binaryfate signs and uploads?
-
selsta
yes
-
m-relay
<rbrunner7:monero.social> Ok, nice.
-
m-relay
<rbrunner7:monero.social> Ok, hopefully news about the wednesday deadline will reach everybody
-
m-relay
<0xfffc:monero.social> There is this one too 👆🏻.
-
m-relay
<ofrnxmr:monero.social>
monero-project/monero #9404 << for people on irc
-
m-relay
<ofrnxmr:monero.social> (0xfffc's reference)
-
m-relay
<rbrunner7:monero.social> You hope to have that reviewed and included until Wednesday?
-
selsta
9404 is a bit risky to include in this release in my opinion
-
m-relay
-
m-relay
<ofrnxmr:monero.social> This one as well
-
m-relay
<0xfffc:monero.social> I am not hopeful about the “included” part.
-
m-relay
<0xfffc:monero.social> I believe is safe to include. IMHO.
-
m-relay
<jberman:monero.social> shooting to review 9404 this week. I can shoot to have it done by wed, but doesn't seem required for this release to me
-
selsta
would be nice if 9376 gets a second review
-
m-relay
<jeffro256:monero.social> agreed
-
selsta
including deep internal changes in the daemon last minute isn't good
-
m-relay
<rbrunner7:monero.social> I could have a look tomorrow at 9376
-
m-relay
<ofrnxmr:monero.social> 9376 has been running on stressnet for a while now and works as expected. Much. Much faster started speed when txpool is large
-
m-relay
<rbrunner7:monero.social> Yeah, if there is something wrong at all then maybe an unintended side effect, influence on something not yet thought about.
-
m-relay
<rbrunner7:monero.social> Ok. Do we have some other subject to discuss now? Is the dev here that, with their question, made the ball roll towards a broader dev-meeting? Something with binary stuff in JSON maybe?
-
m-relay
<ofrnxmr:monero.social> Yes
-
m-relay
<rbrunner7:monero.social> Do you have a pointer?
-
m-relay
<ofrnxmr:monero.social> rbrunners serialization / strings issue (he has a pr on stressnet) imho needs to be investigated and property implemented asap
-
m-relay
<ofrnxmr:monero.social> Block sync size + the serialization issue = problems that we dont want on mainnet
-
m-relay
<rbrunner7:monero.social> Yes, needs a taker, a dev with some free time on their hand. Which may be rare right now ...
-
vthor_
rbunner7: well, I have extended monero-wallet-rpc with two endpoint for binary blob key image export/import, don't know if that fits here, and it would be cool if it could be included
-
m-relay
<0xfffc:monero.social> ( Very important )
-
m-relay
<rbrunner7:monero.social> I think the connection is with cuprate
-
m-relay
<rucknium:monero.social> hinto hinto suggested the binary JSON-RPC deprecation
-
m-relay
<ofrnxmr:monero.social> We need to implement a dynamic BSS and/or need to fix the serialization / strings limitations
-
vthor_
sorry, didn't want to disturb :/
-
m-relay
<jeffro256:monero.social> BSS
-
m-relay
<jeffro256:monero.social> ?
-
m-relay
<rbrunner7:monero.social> How many blocks to sync in one gulp
-
m-relay
<ofrnxmr:monero.social> bss= block sync size
-
m-relay
<hinto:monero.social> hello, yes the issue could maybe use more discussion from other devs although I think any approach within reason will be reasonable:
monero-project/monero #9422
-
m-relay
<rbrunner7:monero.social> Ah, ok, there is already an issue as a nice place to discuss. So just needs more eyes, and people opining :)
-
m-relay
<hinto:monero.social> I'm willing to make the changes to `monerod` although it may be faster if someone more familiar were to do it, at the very least I can review
-
m-relay
<rbrunner7:monero.social> Do we run into nasty coordinating proplems if we change that with clients that use these endpoints?
-
m-relay
<hinto:monero.social> jberman suggested deprecating the endpoints within 12 months, I'd assume they'd still work afterwards but are not recommended in documentation
-
m-relay
<ofrnxmr:monero.social> ((We also need to stop using words interchangeably, ie "block" and "ban". Dns blocklist, banlist, block size, block time (ban), block time (blocks)
-
m-relay
<ofrnxmr:monero.social> block-sync-size really means "batch size"))
-
m-relay
<rbrunner7:monero.social> For the record, the issue that needs a competent dev for implementing a good longterm solution, about that "BSS" issue:
spackle-xmr/monero #12
-
m-relay
<ofrnxmr:monero.social> ^^ this is high priority imo
-
m-relay
<0xfffc:monero.social> I can take this. The bandwidth efficient propagation will be delayed though
-
m-relay
<rbrunner7:monero.social> If nobody finds time near- or mid-term, we could probably just go with what I did for a first quick fix, just rising those limits. After some testing whether it really does not blow up somewhere.
-
m-relay
<jeffro256:monero.social> Which limit type was actually hit in the stressnet case? Objects, fields, or strings?
-
m-relay
<rbrunner7:monero.social> Strings.
-
m-relay
<ofrnxmr:monero.social> We still have a max packet size of 100mb. If we were to play it safe, we should mimic stressnet and change bss from 20 > 5 and implement rbrunners suggestion.
-
m-relay
<ofrnxmr:monero.social> but neither of those is a long term solution
-
m-relay
<rbrunner7:monero.social> At least. But I did not rise the limits one-by-one.
-
m-relay
<0xfffc:monero.social> ( multiple limitations at play here )
-
m-relay
<ofrnxmr:monero.social> strings was the error that 0xfffc's debugger showed
-
m-relay
<rbrunner7:monero.social> Yes, I also saw it myself in the debugger, in some nice live scenario.
-
m-relay
<ofrnxmr:monero.social> The problem with bss = 20 is the packet size limit
-
m-relay
<rucknium:monero.social> 0xfffc: IMHO it makes sense for you to try to solve the BSS issue. The efficient tx propagation proposal has some privacy issues that the dev & researcher community may want to discuss more.
-
m-relay
<ofrnxmr:monero.social> Simply raising serialization limits can eventually also hit the packet size limit.
-
m-relay
<ofrnxmr:monero.social> dynamic bss is best solution to the static bss=20 imo
-
m-relay
<rucknium:monero.social> And the current stressnet will last for about two months longer
-
m-relay
<rucknium:monero.social> This is the efficient tx propagation issue:
monero-project/monero #9334
-
m-relay
<0xfffc:monero.social> I am all ears. If community thinks this is more important. I will switch immediately.
-
m-relay
<ofrnxmr:monero.social> Unrestricted rpc will fail to connect when txpool > 100mb
-
m-relay
<ofrnxmr:monero.social> Restricted batches rpc calls into 100tx/call. We need to fix this for unrestricted rpc jberman @jberman:monero.social:
-
m-relay
<rbrunner7:monero.social> Hmm, gut feeling tells me that this efficient tx propagation thing might take quite a while to get merge-ready, maybe really a good idea to attack that BSS issue first.
-
m-relay
<rbrunner7:monero.social> And well, it may take a while until we have the next spam wave, or organic traffic in stressnet amounts
-
m-relay
<0xfffc:monero.social> Sure. Then I am switching to fixing serialization limit right now. ( will go back to bandwidth efficient propagation after that )
-
m-relay
<ofrnxmr:monero.social> bss or serialization?
-
m-relay
<rbrunner7:monero.social> Splendid!
-
m-relay
<0xfffc:monero.social> Serialization will be easier to attack at first IMHO. What do you guys think? Which one we should start with?
-
m-relay
<ofrnxmr:monero.social> Serialization only helps up to 5mb blocks
-
m-relay
<0xfffc:monero.social> Keep in mind the multiple limitations 👆🏻
-
m-relay
<ofrnxmr:monero.social> Bss can be reduced to 5 (like stressnet) to add a stop-gap measure
-
m-relay
<0xfffc:monero.social> My impression was we hit the serialization first.
-
m-relay
<ofrnxmr:monero.social> But dynamic bss is a better solution (which would allow <=100mb blocks)
-
m-relay
<0xfffc:monero.social> So it is better to start from the bottleneck.
-
m-relay
<rbrunner7:monero.social> In my understanding things are linked. With a good algorithm to dynamically adjust BSS to traffic and block sizes the serialization limits are not that critical, and we can stay with relatively low "sanity checks"
-
m-relay
<ofrnxmr:monero.social> Yes. We hit serialization at 1.5mb blocks
-
m-relay
<ofrnxmr:monero.social> after Fixing serialition, we hit packet at 5mb blocks
-
m-relay
<ofrnxmr:monero.social> If dynamic bss, we hit serialization at 30mb blocks
-
m-relay
<ofrnxmr:monero.social> After fixing serialization + dynamic bss, we hit packet at 100mb blocks
-
m-relay
<rbrunner7:monero.social> Alright, 0xfffc , I think things will clear up as soon as you wrap your head around the hole story :)
-
m-relay
<rbrunner7:monero.social> *whole story
-
m-relay
<0xfffc:monero.social> ( So in every case we hit serialization limitation. )
-
m-relay
<ofrnxmr:monero.social> No
-
m-relay
<0xfffc:monero.social> But rbrunner7 thinks the dynamic bss is more important than serialization limit.
-
m-relay
<ofrnxmr:monero.social> The final boss is packet
-
m-relay
<0xfffc:monero.social> That is the monster at the end of story :))
-
m-relay
<jberman:monero.social> this likely needs testing, but just changing `std::numeric_limits<size_t>::max()` to something sane like 1000 may be fine here:
github.com/monero-project/monero/bl…fd/src/rpc/core_rpc_server.cpp#L660
-
m-relay
<ofrnxmr:monero.social> right, bss gets us further (to 30mb blocks) than serialization (5mb blocks)
-
m-relay
<jberman:monero.social> it shouldn't break wallet2, but could break other clients that rely on it
-
m-relay
<ofrnxmr:monero.social> This was my suggestion (1000 = 100kb(max block size) * 1000 = below the packet size limit)
-
m-relay
<0xfffc:monero.social> Important point: all of those limitations need to be fixed. Let me review each of them. We debugged it once.
-
m-relay
<0xfffc:monero.social> Start from the compromise of (simpler + more important)
-
m-relay
<ofrnxmr:monero.social> "this" = changing the max tx pull to <1000
-
m-relay
<kayabanerve:monero.social> ofrnxmr: FCMP is not 12m away. We're looking at a PR for a lot of the framework within the next few weeks. Academia is also near complete, and a variety of the libraries are about to head to auditing.
-
m-relay
<jeffro256:monero.social> 100mb packet probably doesn't need to be touched
-
m-relay
<ofrnxmr:monero.social> To mainnet?
-
m-relay
<ofrnxmr:monero.social> Kaya
-
m-relay
<kayabanerve:monero.social> The moment that PR is open, it's monero-dev.
-
m-relay
<0xfffc:monero.social> I agree. If we have good dynamic bss algorithm. 100mb should be more than important.
-
m-relay
<0xfffc:monero.social> s/important/enough/
-
m-relay
<jeffro256:monero.social> IMO 0xfffc your time would be really well spent reviewing vtnerd's serialization library changes since those changes would make the limits less important since the serializer is inherently more efficient, and parsing rogue messages is less of a risk
-
m-relay
<kayabanerve:monero.social> jeffro256: Happy to help with auditors :) Feel free to reach out.
-
m-relay
<0xfffc:monero.social> Great suggestion. I think I have missed those PRs. What was the number?
-
m-relay
<jberman:monero.social> I think all fcmp integration code (not including reproducible build-related) in the monero repo can be completed within 4 months
-
m-relay
<kayabanerve:monero.social> Re: RPC method deprecation, given how FCMP++ will change the definition of the output distribution (it's a new pool superseding all others) and TX creation code, do we want to take advantage of the amount of changes to argue hard breaks on other methods? Deprecate prior to HF, remove entirely with the bin that HFs?
-
m-relay
<jeffro256:monero.social> Here the PR for the overall tracking:
monero-project/monero #8867. Here's the currently opened piecemeal PR:
monero-project/monero #8970
-
m-relay
<kayabanerve:monero.social> I'd hope for mainnet within a year, ofrnxmr.
-
m-relay
<kayabanerve:monero.social> Sorry for not being present earlier and responding to what's relevant on my end now.
-
m-relay
<jeffro256:monero.social> It's a pretty huge task, but replacing the DOM serialization, especially for large funky messages, will help DoS mitigation a lot
-
m-relay
<ofrnxmr:monero.social> Isnt this 7999 redux?
-
m-relay
<0xfffc:monero.social> Great. Well before the time I joined monero community. I was not aware of these. Thanks for mentioning.
-
m-relay
<0xfffc:monero.social> Just the final question. I am between two tasks right now. Fixing out serialization limit, or reviewing vtnerd serialization PR.
-
m-relay
<0xfffc:monero.social> Which one I should tackle?
-
m-relay
-
m-relay
<jberman:monero.social> Full wallets shouldn't need an RPC route for anything like getting the output distribution at all (only light wallets should need to fetch decoy paths), but generally ya the get_output_distribution endpoint can be set to be deprecated in theory when fcmp's are required, and that is a better deprecation timeline we can aim for
-
m-relay
<ofrnxmr:monero.social> Jbernan, thoughts on 7999 vs 8867?
-
m-relay
<kayabanerve:monero.social> jberman: we still need decoy requests for paths, as you say. How does that enable deprecating getting the output distribution?
-
m-relay
<kayabanerve:monero.social> My comment was how if we're already making notable changes necessary for practical operation, we can also make breaking changes and provide a single migration guide (instead of two releases with such notable changes).
-
m-relay
<jeffro256:monero.social> I really don't see the point in removing the `get_output_distribution` RPC method (even the "broken" JSON one) since it *works* now for the custom JSON parser, and doesn't really affect other code in the codebase
-
m-relay
<kayabanerve:monero.social> The broken JSON one is a sin, it should be removed ASAP.
-
m-relay
<jeffro256:monero.social> Obviously I see the value of *also* having a JSON compliant endpoint
-
m-relay
<jeffro256:monero.social> I disagree. Current services depend on it, and removing it for the sake of removing is just annoying to people building things in Monero
-
m-relay
<kayabanerve:monero.social> We should not have an endpoint which is fundamentally broken to its definition.
-
m-relay
<jberman:monero.social> 8867 seems like it would be fine compared to 7999 for those reasons. If it solves the issue presented in the PR, then fine with me. Would be curious to see how it performs relative to 7999 too
-
m-relay
<rbrunner7:monero.social> Alright. We are well past the hour. Allow me to close the meeting proper while the detailed discussions about serialization and other things go on of course. Thanks everybody for attending, read you again in 1 week, place to be decided.
-
m-relay
<kayabanerve:monero.social> It claims to be JSON. It is not. It at least needs to be made hex.
-
m-relay
<0xfffc:monero.social> I have feeling we have opened a can of worms.
-
m-relay
<0xfffc:monero.social> ( 7999 vs 8867 vs fixing serialization limit )
-
m-relay
<ofrnxmr:monero.social> 7999 vs 8867 can was opened 2+yrs ago
-
m-relay
<kayabanerve:monero.social> Also, it's unclear how to parse it with a custom parser. It isn't spec compliant? Is its binary guaranteed to not to have instances of "? Are some sequences unrepresentable?
-
m-relay
<sneedlewoods:monero.social> thank you everyone, seems there are enough topics to justify a dev-meeting
-
m-relay
<kayabanerve:monero.social> If it's not spec compliant, it's not properly documented, and it's quite possibly incomplete, it needs revamping.
-
m-relay
<0xfffc:monero.social> I belie we can use the serialization as standalone library. Why not write a benchmark suite, and winner takes all.
-
m-relay
<ofrnxmr:monero.social> SNeedlewoods @sneedlewoods:monero.social: i was never against a dev meeting, ftr
-
m-relay
<jberman:monero.social> hinto's proposal I believe to keep the code so it continues to function as is, and mentioning it's deprecated in documentation seems fine to me
-
m-relay
<0xfffc:monero.social> Not gonna lie. -dev meeting was more interactive :))
-
m-relay
<hinto:monero.social> If FCMP++ breaks the endpoint semantics anyway, can't it stay until post HF, then be removed afterwards?
-
m-relay
<jeffro256:monero.social> A benchmark shouldn't be the ONLY factor, since readability and maintainability is also important for open-source health
-
m-relay
<jberman:monero.social> I see, ya, merging timelines with fcmp's make sense on that front
-
m-relay
<jeffro256:monero.social> FCMP++ doesn't inherently break `get_output_distribution` semantics though
-
m-relay
<0xfffc:monero.social> At least it is an objective starting point though.
-
m-relay
<jeffro256:monero.social> I think you'll find that both of them are *significantly* faster than the core codebase, especially in the worst case
-
m-relay
<0xfffc:monero.social> ( just a suggestion. Not saying it is the way to move forward )
-
m-relay
<0xfffc:monero.social> Quick question. The interface is same, or they have completely different interface?
-
m-relay
<hinto:monero.social> jeffro256: okay, in that case I think it makes sense for it to remain indefinitely, be clearly deprecated in documentation, and have a sane `_v2` version
-
m-relay
<0xfffc:monero.social> ( quick question. The release number should be 18.3.4 or 18.4.0? )
-
m-relay
<0xfffc:monero.social> ( apologies. Too many “quick questions” )
-
m-relay
<sneedlewoods:monero.social> 18.3.4 afaik
-
m-relay
<ofrnxmr:monero.social> Historically it _should_ be 18.4.0, id think
-
m-relay
<ofrnxmr:monero.social> We usually the major.minor.patch for bugfix releases
-
m-relay
<jeffro256:monero.social> The interfaces differ in a lot of ways
-
m-relay
<jeffro256:monero.social> It would be really hard to lay out all the differences right here right now, but I'd be happy to DM
-
m-relay
<0xfffc:monero.social> Will dm you. If we want a benchmark suite to do a performance comparison. It should be a fair one. Thanks.
-
m-relay
<kayabanerve:monero.social> You now need to use a new pool for a new distribution. I wouldn't be surprised if a lot of people hardcoded the pool to 0.
-
m-relay
<vtnerd:monero.social> 0xfffc: the interfaces are different. 7999 only supports p2p, whereas 8867 supports p2p, json, and msgpack via c++ interface (msgpack is written in LWS already but not in 8867). 7999 changes macros for existing code, whereas 8867 is compatible with existing macros with the exception of trailing semicolons that was used ina few places of the RPC code
-
m-relay
<vtnerd:monero.social> I'm not sure how much work it is to add different formats to 7999, Id have to look at it agajn
-
m-relay
<jeffro256:monero.social> Why a new pool? Are you saying that because the new output definitions are not backwards compatible with CLSAG?
-
m-relay
<vtnerd:monero.social> I _think_ it requires unique template expansions to foreach format, whereas 8867 allows for a single base type instead, to cut down on template expansion and executable size (with a corresponding runtime hit to vtable usage). 8867 can expand to each unique format too if the runtime hit seems too big
-
m-relay
<kayabanerve:monero.social> Because we're now including all transparent amount outputs?
-
m-relay
<jberman:monero.social> the new pool is the set of all outputs unified (includes pre-rct and post-rct)
-
m-relay
<kayabanerve:monero.social> It's the superset of all prior pools?
-
m-relay
<jeffro256:monero.social> Oh I see what's you're saying now. That fact still doesn't break the backwards behavior of `get_output_distribution`, though, even if it's less useful, so I still think it's worth keeping the old version around in some form
-
m-relay
<kayabanerve:monero.social> I'm not saying get rid of it.
-
m-relay
<hardenedsteel:monero.social> > The design is intended to maximize privacy of the source of a transaction by broadcasting it over an anonymity network, while relying on IPv4 for the remainder of messages to make surrounding node attacks (via sybil) more difficult.
-
m-relay
<hardenedsteel:monero.social> is that true? IPv6 support isn't completed?
-
m-relay
<kayabanerve:monero.social> I'm saying we're changing how it's almost certainly called, removing usage of getting output info in TX construction, and adding new routes to use during TX construction.
-
m-relay
<hardenedsteel:monero.social> > The design is intended to maximize privacy of the source of a transaction by broadcasting it over an anonymity network, while relying on IPv4 for the remainder of messages to make surrounding node attacks (via sybil) more difficult.
-
m-relay
-
m-relay
<hardenedsteel:monero.social> is that true? IPv6 support isn't completed?
-
m-relay
<jeffro256:monero.social> Yes, there
-
m-relay
<kayabanerve:monero.social> With so many semantic changes to practical use, why would we not also get the syntax changes out of the way?
-
m-relay
<kayabanerve:monero.social> (fixing a broken, undocumented route which we still have yet to settle if it's complete or not)
-
m-relay
<kayabanerve:monero.social> Else we have two nontrivial RPC updates with two migration guides. I just want to unify them into a single event.
-
m-relay
<kayabanerve:monero.social> The only breaking change I've discussed so far is fixing the ones which claim to be JSON and aren't. I'm not proposing removing methods at this time.
-
m-relay
<kayabanerve:monero.social> If you want to make a well-defined spec for the encoding they do, if you even can, update their documentation, and remove all claims they're JSON, you're welcome to do so to get me to drop this topic BTW.
-
m-relay
<kayabanerve:monero.social> Else we can just make them explicitly binary methods or use hex.
-
m-relay
<jeffro256:monero.social> Oh yes I understand, I wasn't trying to suggest that you were suggesting removing any instance of `get_output_distribution`, but I think trying to fix this *one* problem with the JSON encoding is NOT going to be backwards compatible (I could be wrong about this premise). Thus, I support making a *new* endpoint (or at least a new way to call it) with these new semantics and syntax,<clipped message>
-
m-relay
<jeffro256:monero.social> while still keeping the old one to support currently deployed services
-
m-relay
<kayabanerve:monero.social> It won't be. We should make the breaking change (its removal) at the same time as we make all other significant changes.
-
m-relay
<kayabanerve:monero.social> I don't support endlessly supporting a broken endpoint when migration should be trivial (oh no, a call to decode hex, the overhead, the horror)
-
vthor_
sorry for interrupting again, but why not deprecate them all and introduce /v2 and give a timeline to remove /v1 endpoints?
-
m-relay
<kayabanerve:monero.social> I'm calling for the removal timeline to be the FCMP++ HF.
-
m-relay
<kayabanerve:monero.social> I don't care when they're deprecated, I'd just rather make all notable changes at one moment.
-
m-relay
<kayabanerve:monero.social> Making the HF the deprecation, so people change to the FCMP RPC methods AND stop using the deprecated method, then removing it however long after, would also be fine.
-
m-relay
<vtnerd:monero.social> A further update on 7999 - it replaced the binary RPC too, but not json
-
m-relay
<kayabanerve:monero.social> We can deprecate even earlier, helping out Cuprate, but then we twice need people to update their RPC callers (once for breaking changes, once for practical, not once for both).
-
m-relay
<kayabanerve:monero.social> As long as the method is deprecated *during the FCMP HF binary release*, so users can only update once at that specific point, I'm happy with timeline.
-
m-relay
<jberman:monero.social> "endlessly supporting a broken endpoint" in this case means just not touching the code, and is pretty trivial. breaking changes across the ecosystem I think is less trivial
-
m-relay
<jberman:monero.social> deprecating in documentation I think is fine
-
m-relay
<kayabanerve:monero.social> jberman: You're not only proposing tech debt, you're wrong.
-
m-relay
<jberman:monero.social> (and intro'ing a new _v2 endpoint)
-
m-relay
<kayabanerve:monero.social> Cuprate has to implement this to achieve parity
-
m-relay
<kayabanerve:monero.social> Cuprate having to implement a broken method which is fundamentally undocumented is not trivial.
-
m-relay
<kayabanerve:monero.social> They can just not bother. Then we have two different RPC specs.
-
m-relay
<vtnerd:monero.social> hardenedsteel: the daemon supports ipv6, except when using a proxy. I'm working on ipv6 support now for that
-
m-relay
<vtnerd:monero.social> How many people using this endpoint are going to switch to cuprate?
-
m-relay
<kayabanerve:monero.social> Do we want to constantly discuss how some impls only have some routes and open that door, or do we want to remove *a broken endpoint* and have the ability to clean up our own code in that regard?
-
m-relay
<kayabanerve:monero.social> That doesn't change any alt impl must support this or must maintain its own list of supported methods vtnerd
-
m-relay
-
m-relay
<kayabanerve:monero.social> I don't even know who uses this method now so it's so cursed. I'd guess its only used internally to the project?
-
m-relay
<kayabanerve:monero.social> Which means no one should care if the project stops using it, and later removes it.
-
m-relay
<jberman:monero.social> lws + openmonero use it as well
-
m-relay
<syntheticbird:monero.social> Please guys deprecate binary json for cuprate sanity
-
m-relay
<syntheticbird:monero.social> this is a cry for help
-
m-relay
<kayabanerve:monero.social> Even if it wasn't for Cuprate I'd be up in arms over this. Broken methods shouldn't be retroactively declared valid with a lifetime promise of support.
-
m-relay
<vtnerd:monero.social> LWS doesn't use that endpoint, it uses zmq
-
m-relay
<kayabanerve:monero.social> OpenMonero will have to make changes for FCMP++. While there, they can stop using a broken method and move to a working one. Then we can deprecate an undocumented standards and remove their custom parsers.
-
m-relay
<jeffro256:monero.social> There are definitely other encoding schemes, but as a note on hex, using it here would make the RPC call (an already heavy call at ~5MB) about 2x heavier
-
m-relay
<kayabanerve:monero.social> Then use bin
-
m-relay
<kayabanerve:monero.social> Why have this as broken JSON in the first place?
-
m-relay
<vtnerd:monero.social> OpenMonero isnt really doing active development afaik, so if broken it will most likely just stop working until someone outside the project issues a pr
-
m-relay
<kayabanerve:monero.social> They'll already break with FCMP++s.
-
m-relay
<kayabanerve:monero.social> So that argument doesn't inherently hold so long as we sync their timelines, as I'm advocating, IMO.
-
m-relay
<jeffro256:monero.social> IIRC it is used in other places outside of `get_output_distribution` too ;(
-
m-relay
<syntheticbird:monero.social> get_txpool_backlog iirc
-
m-relay
<kayabanerve:monero.social> Wow, we have multiple broken, undocumented methods. We should fix them...
-
m-relay
<syntheticbird:monero.social> tbf it is documented
-
m-relay
<jberman:monero.social> @vtnerd this isn't calling the JSON endpoint
github.com/vtnerd/monero-lws/blob/2…a7c267f887/src/rest_server.cpp#L533 ?
-
m-relay
<syntheticbird:monero.social> and iirc txpool backlog have a boolean to toggle binary
-
m-relay
<kayabanerve:monero.social> SyntheticBird: what's the rules? It isn't JSON
-
m-relay
<kayabanerve:monero.social> Is the encoded binary guaranteed to not have "\"", enabling use of " \"" for termination?
-
m-relay
<syntheticbird:monero.social> its literally raw binary so ig there are no guarantees
-
m-relay
<kayabanerve:monero.social> How is that guarantee enforced when "\"" is a valid single byte <128? Is it using a base64 encoding and "\"" > 64 in ASCII?
-
m-relay
<kayabanerve:monero.social> Wow, it's almost like it's undocumented how to properly handle it and likely incomplete (there's presumably some binary sequence it'll just error on)
-
m-relay
<syntheticbird:monero.social> its epee encoding
-
m-relay
<kayabanerve:monero.social> You can't have raw binary in JSON and claim it's documented/a valid encoding.
-
m-relay
<jberman:monero.social> this is a fine argument to me
-
m-relay
<syntheticbird:monero.social> i meant documented in the common sense (we have an entry on doc website)
-
m-relay
<syntheticbird:monero.social> but yes its completely ridiculous
-
m-relay
<kayabanerve:monero.social> It doesn't matter how you define it. It's still its own thing with questionable parser rules. Is it hit string start, switch to epee read, read till epee exhausted, then switch back to JSON?
-
m-relay
<syntheticbird:monero.social> probably yes
-
m-relay
<kayabanerve:monero.social> The fact no one can immediately answer how it handles the context switch shows this isn't documented, even if the fact it's broken is documented.
-
m-relay
<vtnerd:monero.social> jberman @jberman:monero.social: that line is calling the zmq endpoint, which has its own unique serialization code. Merging this with the http rpc serialization is one of my nice to haves of the 8867 patch (eventually). Not all the endpoints can be merged to same code iirc
-
m-relay
<kayabanerve:monero.social> The question is how exactly it works and the exact spec it isn't broken under.
-
m-relay
<kayabanerve:monero.social> I'd ping jeffro256 on if you can read epee until exhausted like that, without issue. I don't recall if the outer object declares the amount of fields it contains.
-
m-relay
<boog900:monero.social> It's a bit-wise copy of the type into a string and then the that sting is transformed using this:
-
m-relay
-
m-relay
<boog900:monero.social> it's not epee bin
-
m-relay
<kayabanerve:monero.social> Oh, so it's a custom base 250
-
m-relay
<syntheticbird:monero.social> that's even funnier (my bad for saying it was epee)
-
m-relay
<kayabanerve:monero.social> ... bass 248?
-
m-relay
<kayabanerve:monero.social> *base 248
-
m-relay
<vtnerd:monero.social> kayabanerve @kayabanerve:monero.social: epee binary has an explicit element count for arrays
-
m-relay
<kayabanerve:monero.social> Or is it just escaping and it is suboptimally using all 256 characters 🤔
-
m-relay
<syntheticbird:monero.social> try casting a type into a string in rust like cpp challenge.
-
m-relay
<syntheticbird:monero.social> difficulty: impossible
-
m-relay
<kayabanerve:monero.social> vtnerd: I am aware it's self describing :) I was just unsure for the outer most object.
-
m-relay
<kayabanerve:monero.social> If the outer most object is considered an array, explicitly lengthed, ACK
-
m-relay
<kayabanerve:monero.social> Anyways. Remove all this, don't claim non-JSON is JSON, simplify lives of other people. We do force people to move to a new .bin but we're already practically forcing rewriting RPC callers for the new FCMP++ semantics/TX construction.
-
m-relay
<kayabanerve:monero.social> Or keep this forever as a headache to us to spare the headaches of... us, except it obviously doesn't spare us, and MyMonero.
-
m-relay
<kayabanerve:monero.social> I've spoken abundantly and will drop out now :p
-
m-relay
<syntheticbird:monero.social> so... are there any arguments against deprecating binary json ?
-
m-relay
<jberman:monero.social> get_output_distribution as it currently exists will have no value to any wallets trying to create txs with fcmp's. As it currently exists, it can be deprecated once fcmp's are live, and replaced with a sane JSON endpoint with 0 issue to live services. We can implement a _v2 endpoint today that functions today and that could be the replacement for the get_output_distribution endpoi<clipped message>
-
m-relay
<jberman:monero.social> nt that is dropped once fcmp's are live. The v2 endpoint could also be designed to cleanly support fetching the unified distr for fcmp's
-
m-relay
<ofrnxmr:monero.social> Meeting done? Thanks everyone
-
m-relay
<syntheticbird:monero.social> and about get_txpool_backlog?
-
m-relay
<syntheticbird:monero.social> should it be deprecated too ?
-
m-relay
<jberman:monero.social> I'm fine with a 12 month deprecation timeline for it. the argument not to support broken endpoints I think is sound
-
m-relay
<syntheticbird:monero.social> Sounds fine (another w for the crabs)
-
m-relay
<vtnerd:monero.social> OpenMonero is using the binary endpoint, so it looks like it won't be affected
-
vthor_
is openmonero not dead?
-
m-relay
<syntheticbird:monero.social> vthor_ this is a secret, never say it is dead again
-
vthor_
:S
-
vthor_
I was searching for it but didn't find a sign of life in the last 5years?
-
m-relay
-
m-relay
<vtnerd:monero.social> That's the escape function, it's simply doing a backslash on key characters, allowing it to technically to be parsed, if still invalid json
-
vthor_
vtnerd: autch
-
vthor_
I planned to take whole monero source appart and try to remove all dependencies and modularize it, so when you want to use the code or parts you could do that without the nee to chew the whole source and drag it into the own source, but now I start to doubt a bit, how it seem a fast moving target. Am I wrong?
-
m-relay
<syntheticbird:monero.social> good luck, see you in 12 months in mental asylum
-
m-relay
<syntheticbird:monero.social> (you are right, but you'll suffer)
-
m-relay
<syntheticbird:monero.social> modularizing a huge cpp codebase with technical debt (that is actively moving) is absolutely insane
-
sech1
It will be easier to rewrite in Rust tbh
-
m-relay
<syntheticbird:monero.social> Cuprate already have it. Next step is Swift node (i'm racist of Go)
-
vthor_
:D
-
vthor_
sech1: rewrite in another language will be easier when you understand all, and so I thing first step would be to transform the code to better understand each piece, get it sortet out, and then reimplement in another language.
-
m-relay
<syntheticbird:monero.social> that's the neat part, you don't transform the code
-
vthor_
syntheticbird: well I'm insane, so I could do insane stuff, too. What you don't like on go, was really thinking with endgoal rust/zig/go
-
m-relay
<syntheticbird:monero.social> oh forgot about zig
-
vthor_
hm, I learn mostly through throwing the wrench into the gears and look where the parts fly :D
-
m-relay
<syntheticbird:monero.social> crash test approach, love it
-
vthor_
I mean I do a long time security related stuff, but I'm no cryptographer, I use crypto how it's given. But after what I read in the source code, a lot of source is bloat and makes the things only more complicated, when I see alone this epee stuff, I mean it Qt/C++ so when I can do Simply QString.toHex() and have the same result then jumping through three methods and land then in an epee lib, my head starts to spin, and then I wonder
-
vthor_
why not in Qt/C++ or in c (is this performance plus it realy worth it?)
-
m-relay
<vtnerd:monero.social> There's no need to add qt dependency, especially since hex conversion is fairly simple. It's a bit complicated in our code because we convert to/from struct directly to/from hex - there's no intermediate step like copying to qstring
-
selsta
.merges
-
xmr-pr
9287 9345 9357 9380 9414 9416 9421 9425 9426 9429 9430
-
selsta
.merge+ 9384 9385
-
xmr-pr
Added
-
selsta
.merge+ 9423
-
xmr-pr
Added
-
m-relay
<ofrnxmr:monero.social> Miniupnp needed?
-
m-relay
-
m-relay
<kayabanerve:monero.social> Just use my Rust rewrite vthor_, only half /s
-
m-relay
<kayabanerve:monero.social> I already modularized the ZK proofs, transaction structs, wallet code, etc.
-
m-relay
<kayabanerve:monero.social> So each section should have minimal dependencies and clear API boundaries.
-
m-relay
<ofrnxmr:monero.social> this one to lower the amount of log files created default
-
m-relay
-
vthor_
kayabanerve: that sounds cool, this is cuprate, or? Thought it was only substitute for monerod, so I never looked inside yet
-
m-relay
<boog900:monero.social> Cuprate uses parts of it, but monero-serai is separate:
github.com/serai-dex/serai/tree/develop/networks/monero
-
vthor_
Thank you boog, I never looked there inside. That looks promising :) So there is monero-serai, but there is written: "monero-serai originally included wallet functionality. That has been moved to monero-wallet.", does that mean/serai-dex/serai/tree/develop/networks/monero/wallet?
-
m-relay
<boog900:monero.social> yeah, `monero-wallet` is the crate name