hyperledger / solang

Solidity Compiler for Solana and Polkadot
https://solang.readthedocs.io/
Apache License 2.0
1.25k stars 208 forks source link

Solana: Implement a CLI Command for Program Deployment #1542

Closed tareknaser closed 10 months ago

tareknaser commented 11 months ago

Description:

This pull request implements solang solana deploy command

Example:

solang solana deploy --output-json flipper.so

Checklist

seanyoung commented 11 months ago

Needs https://github.com/hyperledger/solang-llvm/pull/29

tareknaser commented 11 months ago

forge-fmt crate causes a dependency issue with solana crates A minimal reproducible is

forge-fmt = "0.2.0"
solana-sdk = "1.16.13"

The error is

error: failed to select a version for `zeroize`.
    ... required by package `solana-program v1.16.13`
    ... which satisfies dependency `solana-program = "=1.16.13"` of package `solana-sdk v1.16.13`
    ... which satisfies dependency `solana-sdk = "^1.16.13"` of package `solang v0.3.2 (/Users/tareknasser/Documents/workspace/blockchain/solang)`
versions that meet the requirements `^1.3` are: 1.6.0, 1.5.7, 1.5.6, 1.5.5, 1.5.4, 1.5.3, 1.4.3, 1.4.2, 1.4.1, 1.4.0, 1.3.0

all possible versions conflict with previously selected packages.

  previously selected package `zeroize v1.0.0`
    ... which satisfies dependency `zeroize = ">=1, <1.4"` of package `curve25519-dalek v3.2.1`
    ... which satisfies dependency `curve25519-dalek = "^3.2.1"` of package `solana-program v1.16.13`
    ... which satisfies dependency `solana-program = "=1.16.13"` of package `solana-sdk v1.16.13`
    ... which satisfies dependency `solana-sdk = "^1.16.13"` of package `solang v0.3.2 (/Users/tareknasser/Documents/workspace/blockchain/solang)`

failed to select a version for `zeroize` which could resolve this conflict
tareknaser commented 10 months ago

Moved to https://github.com/hyperledger/solang-aqd