elucidsoft / dotnet-stellar-sdk

Stellar API SDK for .NET 6.x
Apache License 2.0
116 stars 54 forks source link

Existing Chaos.NaCl.Ed25519 conflict with dotnet-stellar-sdk #107

Closed bazooka70 closed 6 years ago

bazooka70 commented 6 years ago

On an existing .NET 4.6.2 console application, I have dlech.Chaos.NaCl package installed (version 0.1.0). In my existing code there is a line:

var buf = new byte[32];
Chaos.NaCl.Ed25519.KeyPairFromSeed(out byte[] publicKey, out byte[] expandedPrivateKey, buf);

After installing the dotnet-stellar-sdk, and trying to compile I get an error (on the reference to Chaos.NaCl.Ed25519):

Error CS0433 The type 'Ed25519' exists in both 'Chaos.NaCl, Version=0.1.0.0, Culture=neutral, PublicKeyToken=null' and 'stellar-dotnetstandard-sdk, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' Stellar D:\Projects\Stellar\Encryption.cs

What can I do to resolve this issue? P.S: This might not be a stellar-dotnetstandard-sdk bug, but I'm not a .NET expert and the face the both packages use a different namespace makes me wonder what could cause this.

Please advice.

Kirbyrawr commented 6 years ago

Hi @bazooka70, you probably need to specify the namespace before calling the method.

In case of the Stellar one is like this: stellar_dotnet_sdk.chaos.nacl

I'm not sure if this is the problem though, let me know!

Edit: After checking, it's not the problem, i would love to help you later on, i will try to be on later

bazooka70 commented 6 years ago

Hi @Kirbyrawr , I don't use stellar_dotnet_sdk.chaos.nacl (this namespace does not exists for my project). My project already uses Chaos.NaCl. As you can see, I specify the the full namespace of Chaos.NaCl. I think that stellar_dotnet_sdk somehow overloads this namespace.

https://github.com/elucidsoft/dotnet-stellar-sdk/blob/master/stellar-dotnet-sdk/chaos.nacl/Ed25519.cs

But I'm not sure how to resolve this :/

Kirbyrawr commented 6 years ago

Hm, what's in your encryption class? Maybe there you have something.

bazooka70 commented 6 years ago

@Kirbyrawr "what's in your encryption class?" Nothing at the moment. I only have a Test method:

internal static void Test()
{            
  var buf = new byte[32];
  Chaos.NaCl.Ed25519.KeyPairFromSeed(out byte[] publicKey, out byte[] expandedPrivateKey, buf);
}

I will create a new fresh project with dlech.Chaos.NaCl and stellar_dotnet_sdk packages and see if this consists...

Kirbyrawr commented 6 years ago

Let us know! Thanks.

bazooka70 commented 6 years ago

project

bazooka70 commented 6 years ago

@Kirbyrawr , I uploaded a screenshot of a brand new project with only the dlech.Chaos.NaCl and stellar_dotnet_sdk packages installed.

p.s: sorry for closing the issue. it was a mistake.

Thanks.

Kirbyrawr commented 6 years ago

Can you try to compile the DLL from this code and use that instead of the Nuget, i believe the Nuget have an old version with the old names.

bazooka70 commented 6 years ago

I will give it a try and let you know... p.s: maybe it will be a good idea to bump the newer version to NuGet?

bazooka70 commented 6 years ago

@Kirbyrawr , Sorry for the dumb question: do I need to build a release DLL? if I try to publish it shows an error: error CS0227: Unsafe code may only appear if compiling with /unsafe

Kirbyrawr commented 6 years ago

Debug release.

El jue., 20 sept. 2018 9:25, bazooka70 notifications@github.com escribió:

@Kirbyrawr https://github.com/Kirbyrawr , Sorry for the dumb question: do I need to build a release DLL? if I try to publish it shows an error: error CS0227: Unsafe code may only appear if compiling with /unsafe

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/elucidsoft/dotnet-stellar-sdk/issues/107#issuecomment-423070480, or mute the thread https://github.com/notifications/unsubscribe-auth/ADG9ciOjTNy27cBGijM6ObNYhWiT1RlEks5uc0LfgaJpZM4WxcIo .

bazooka70 commented 6 years ago

@Kirbyrawr , Yes compiling the DLL from this code solved the CS0433 error! Thanks a million! Is it possible to upload the latest version to NuGet please?

Kirbyrawr commented 6 years ago

Sure we will work on it, i'm glad you got it working, thank you and apologies for the late time response since i'm working ^^"

El jue., 20 sept. 2018 9:36, bazooka70 notifications@github.com escribió:

@Kirbyrawr https://github.com/Kirbyrawr , Yes compiling the DLL from this code makes the CS0433 error is gone! Thanks a million! Is it possible to upload the latest version to NuGet please?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/elucidsoft/dotnet-stellar-sdk/issues/107#issuecomment-423073944, or mute the thread https://github.com/notifications/unsubscribe-auth/ADG9crT5rX7gAnDb1jJ10pCNagIQJsiuks5uc0WXgaJpZM4WxcIo .

bazooka70 commented 6 years ago

@Kirbyrawr, You are VERY helpful and kind! thank you for your time and effort :) Now I need to figure out how to share this DLL via TFS. never done this before.