Skip to content

Add native contract: StdLib and CryptoLib#2298

Merged
erikzhang merged 17 commits intomasterfrom
native-stdlib
Feb 8, 2021
Merged

Add native contract: StdLib and CryptoLib#2298
erikzhang merged 17 commits intomasterfrom
native-stdlib

Conversation

@erikzhang
Copy link
Member

No description provided.

@erikzhang erikzhang added this to the NEO 3.0 milestone Feb 5, 2021
Copy link
Member

@vncoelho vncoelho left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is very good and waited change!
We from C++ love it.

@erikzhang erikzhang changed the title Add native contract: StdLib Add native contract: StdLib and CryptoLib Feb 6, 2021
@shargon
Copy link
Member

shargon commented Feb 6, 2021

If we move all to native contracts, we will need syscalls?

@erikzhang
Copy link
Member Author

erikzhang commented Feb 6, 2021

We need syscall. Some syscalls can't be moved.

@erikzhang
Copy link
Member Author

Go?

@ProDog
Copy link
Contributor

ProDog commented Feb 8, 2021

Test need neo-project/neo-node#740.

@erikzhang
Copy link
Member Author

We can merge first.

@shargon
Copy link
Member

shargon commented Feb 8, 2021

I would like to move the UT, so please wait one day

{
try
{
return Crypto.VerifySignature(message, signature, pubkey, curves[curve]);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe it will be faster with a switch?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we will add more curves in the future.

@shargon
Copy link
Member

shargon commented Feb 8, 2021

I have problems with UT because Blockchain actor is loaded asynchronous. Any idea about how to wait until finish?

TODO remove sleep
@erikzhang
Copy link
Member Author

I have problems with UT because Blockchain actor is loaded asynchronous. Any idea about how to wait until finish?

Why do you need to wait for blockchain actor?

@shargon
Copy link
Member

shargon commented Feb 8, 2021

@erikzhang could you take a look to UT_StdLib ? it seems that blockchain actor (OnPersist) is not loaded after call InitializeMockNeoSystem

@shargon
Copy link
Member

shargon commented Feb 8, 2021

Why do you need to wait for blockchain actor?

Because NativeContracts are not initialized and UT fault.

@erikzhang
Copy link
Member Author

I have problems with UT because Blockchain actor is loaded asynchronous. Any idea about how to wait until finish?

Done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants