-
Notifications
You must be signed in to change notification settings - Fork 40
refactor: monero-rs -> monero-oxide #836
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Thanks a lot for taking this on! I'll review this soon. Over the holidays I'll have less time but I'll try to make this a priority. The general approach looks sound. One nitpick I have is that I'd like to have all the monero-oxide extension types (alternatives to monero-rs) moved into a single crate. Name would probably be monero-oxide-ext. We should also take a look at how Cuprate handles this. I'll leave more detailed actionable comments soon. |
|
This does do this, I just called it |
967984e to
11e48f1
Compare
|
In an abundance of caution, we should do a few manual tests to ensure backwards compatibility.
|
|
I'm also unsure if we should move the serde stuff in the new |
|
All our serde implementations live in the same files as the types they correspond to. I leave the testing to you, I don't really know how to do those tests since I've never actually used this program for its intended purpose >_< |
|
|
They pass on master. |
|
I believe we may be working with a wrong view key somewhere. Bob is trying to scan a particular Monero transaction and he wants to verify that the correct amount is being transferred. This check fails. Bob also does not detect the transaction on chain but needs Alice to the transfer proof to him. He usually sees it on chain beforehand (especially in integration tests). |
11e48f1 to
313f715
Compare
what did you change to fix this? the force push makes it hard to understand |
|
Nothing, just a clean rebase |
|
Compilations fails with: |
|
Means it wants another rebase maybe? Those lines are wrong to my checkout... |
|
No, it wants to be built on the latest version of the source branch where this is fixed (444b182). |
Did you push? |
|
bugbot run |
| } | ||
|
|
||
| pub fn decompress(&self) -> Point { | ||
| self.point.decompress().expect("validated in constructor") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we ever construct this type without the constructor?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No
| pub tx_keys: HashMap<monero::Address, monero::PrivateKey>, | ||
| /// | ||
| /// Key is `MoneroAddress::to_string()`. It's not viable to use the address directly. | ||
| pub tx_keys: HashMap<String, monero_oxide_ext::PrivateKey>, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is not viable? We can implement eq?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And MoneroAddress even implements PartialEq/Eq. But it doesn't implement Hash, and the type system is not good enough to let us work around this (I tried!).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Got it. I opened an issue here monero-oxide/monero-oxide#158
9a214da to
69b2e68
Compare
|
Rebased, hopefully fixed? |
|
a44556a fixes it. Did you rebase on that one? |
|
Yeah, needs another rebase... |
|
bugbot run (cant hurt) |
69b2e68 to
0cbf20f
Compare
|
See the failed CI: |
… to monero-amount Ref: eigenwallet#764
This partially reverts commit 6008a35.
0cbf20f to
27b313e
Compare
|
Bounty of 0.6 XMR + 0.18 XMR paid to @nabijaczleweli. Thank you for the contribution. |
Closes #764
Ref: #775:
Note
Monero stack migration to monero-oxide
monero-oxide-ext(Amount, PrivateKey/PublicKey, address serde) and adds it to workspace and UI typeshare generationmonerowithmonero-address/monero-oxide-wallettypes across crates (monero-sys,monero-wallet,monero-rpc-pool,swap-*, tests), updating APIs, serde, and network enumsmonero-sysFFI and public API to new types; adjusts transaction key handling (map keys now address strings), reserve proof, balances, transfers, and listenersWritten by Cursor Bugbot for commit 69b2e68. This will update automatically on new commits. Configure here.