anchor-go icon indicating copy to clipboard operation
anchor-go copied to clipboard

missing struts

Open berlinguyinca opened this issue 10 months ago • 2 comments

hi,

thanks for your hard work, I'm trying to generate the interfaces to the jupiter.idl and i Iend up with lots of missing types.

Example: image

All these structs are missing, except for SwapCrema

The interfaces were generated with the IDL from here:

https://solscan.io/account/JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4#anchorProgramIdl

and the output of anchor-go was

wohlgemuth@beast:~/IdeaProjects/blockdb/blockchain/decoders/solana/idl$ anchor-go --src jupiter.json 
[+] Generating client from IDL: jupiter.json
[?] idl.Events is defined, but generator is not implemented yet.
[?] idl.Errors is defined, but generator is not implemented yet.
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/instructions.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/types.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/accounts.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/Route.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/RouteWithTokenLedger.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/SharedAccountsRoute.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/SharedAccountsRouteWithTokenLedger.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/ExactOutRoute.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/SharedAccountsExactOutRoute.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/SetTokenLedger.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/CreateOpenOrders.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/CreateProgramOpenOrders.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/Claim.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/ClaimToken.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/CreateTokenLedger.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/testing_utils.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/Route_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/RouteWithTokenLedger_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/SharedAccountsRoute_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/SharedAccountsRouteWithTokenLedger_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/ExactOutRoute_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/SharedAccountsExactOutRoute_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/SetTokenLedger_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/CreateOpenOrders_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/CreateProgramOpenOrders_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/Claim_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/ClaimToken_test.go
[✓] /home/wohlgemuth/IdeaProjects/blockdb/blockchain/decoders/solana/idl/generated/jupiter/CreateTokenLedger_test.go

Don't forget to import the necessary dependencies!

        go get github.com/gagliardetto/[email protected]
        go get github.com/gagliardetto/[email protected]
        go get github.com/gagliardetto/[email protected]
        go get github.com/gagliardetto/[email protected]
        go get github.com/stretchr/[email protected]
        go get github.com/davecgh/[email protected]

any idea what the issues are?

berlinguyinca avatar Apr 16 '24 04:04 berlinguyinca

Ok I managed to compile the code now, by manually modifying the files and removing the 'swap' in front of the failing ones.

image

Sadly the trests are failing now with 'enum to complicated' and I'm trying to find a clear example how to actually use the idl in go, to parse my transaction instructions.

berlinguyinca avatar Apr 16 '24 19:04 berlinguyinca

The test errros, as example:

image

berlinguyinca avatar Apr 16 '24 19:04 berlinguyinca