Matthias Seitz
fca8f997fa
fix(solc): via-ir should be optional ( #1664 )
2022-09-04 14:36:31 -07:00
Matthias Seitz
e425b55c92
chore(solc): replace colorized with yansi ( #1662 )
2022-09-04 11:00:11 -07:00
Roman Krasiuk
083054d4fe
serialize viaIR setting ( #1655 )
2022-09-04 10:55:57 -07:00
Matthias Seitz
13a0144aba
fix(solc): use correct model for metadata libraries ( #1648 )
...
* chore: add spells output
* fix(solc): use correct model for metadata libraries
2022-08-30 10:36:58 -07:00
Mark Tyneway
16f686df26
ethers-solc: add immutableReferences output selector ( #1523 )
...
* ethers-solc: add immutableReferences output selector
It is a property on the deployed bytecode object
on the compiler output. This is the precursor for
`forge inspect <contract-name> immutableReferences`.
* chore: update changelog
2022-07-28 11:07:24 -07:00
Matthias Seitz
1d40d4e049
fix(solc): make StorageLayout json parsing lossless ( #1515 )
2022-07-26 08:26:19 -07:00
Matthias Seitz
ef8d97e05e
fix(solc): serialize metadata as raw string ( #1474 )
2022-07-12 11:28:29 -07:00
Matthias Seitz
3c1de64240
refactor(solc): unify find/remove api ( #1449 )
...
* refactor(solc): unify find/remove api
* fix: update docs
2022-07-04 11:53:49 -07:00
Matthias Seitz
9fc55c0aed
fix(solc): apply base path to model checker contracts ( #1437 )
2022-06-30 09:18:32 -07:00
Matthias Seitz
f6eaa7e551
fix: remove 0x bytecode object prefix for CompilerOutput ( #1424 )
...
* fix: remove 0x bytecode object prefix for CompilerOutput
* chore: rustfmt
* chore(clippy): make clippy happy
2022-06-28 15:17:50 -07:00
Matthias Seitz
2ebdef68d2
feat!(solc): add additional remove functions ( #1406 )
2022-06-22 13:14:02 -04:00
Matthias Seitz
e3389f336a
feat(solc): emit build info files if configured ( #1338 )
...
* feat(solc): emit build info files if configured
* feat: add content hashing
2022-06-15 12:44:20 -07:00
Matthias Seitz
980649060a
feat(solc): emit additional raw metadata field ( #1365 )
...
* feat(solc): emit additional raw metadata field
* chore: update CHANGELOG
* test: updata test
* fix(solc): proper metadata deserialization
2022-06-10 16:49:19 +03:00
0xYYY
5ee4092bd3
fix(solc): fix fields for `UserDoc` and `DevDoc` ( #1355 )
...
* fix(solc): fix fields for UserDoc and DevDoc
* solc: unify userdoc notice fields
2022-06-08 03:30:41 -07:00
Bjerg
f56146025a
feat: source map getters for deployed bytecode ( #1348 )
...
* feat: source map getters for deployed bytecode
* fix: borrow checker
2022-06-06 06:42:45 -07:00
Matthias Seitz
85a572c9f6
fix(solc): emit empty vec for empty artifacts ( #1345 )
2022-06-04 11:38:21 -07:00
Matthias Seitz
8e3529e9b0
fix(solc): emit empty bytecode objects for standalone sol files ( #1327 )
2022-05-31 09:29:25 -07:00
Matthias Seitz
ac0560c252
fix(solc): improve contract metadata bindings ( #1326 )
2022-05-31 09:28:23 -07:00
Matthias Seitz
54f1b9dee8
feat(solc): use relative paths and --base-path option ( #1317 )
...
* feat(solc): use relative paths and --base-path option
* chore: update CHANGELOG
* strip lib paths
2022-05-27 13:31:11 -07:00
Matthias Seitz
f874680404
fix(solc): remove viaIR for older versions ( #1304 )
2022-05-23 13:08:19 -07:00
Matthias Seitz
75835a9280
feat(solc): emit artifacts for standalone source files ( #1296 )
...
* feat(solc): emit artifact files for sources with no contracts
* test(solc): add tests for emitting standalone sources
* chore: update CHANGELOG
* style: check ast is some
2022-05-22 15:19:59 -07:00
Matthias Seitz
fb39d36697
fix(solc): support constructor user docs ( #1283 )
2022-05-19 11:02:10 -07:00
Leo
eb94e53d1f
Add basic solc model checker options ( #1258 )
...
* Add basic solc model checker options
* Changelog entry
* review 1
* chore: fmt
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-05-13 13:29:13 -07:00
Matthias Seitz
494af08b85
feat(solc): add source map access functions ( #1253 )
2022-05-12 14:47:45 -07:00
Bjerg
1e2b02920b
fix: make ast node ids optional ( #1254 )
2022-05-12 14:47:38 -07:00
Bjerg
0a031417d8
feat: remaining AST nodes ( #1201 )
...
* feat: remaining AST nodes
* docs: few rustdocs
* feat: add more node fields
* feat: add more ast nodes
* fix: actually deserialize node type
Note: This breaks `NodeType::Other` :/
2022-05-10 10:43:22 -07:00
Matthias Seitz
44cbbc769a
feat(solc): store source files with their solc version ( #1231 )
...
* feat(solc): add versioned sources
* feat(solc): support versioned sources
2022-05-06 11:42:01 -07:00
Matthias Seitz
a978bc98af
fix(solc): remapping aware libraries ( #1190 )
...
* feat(solc): add Libraries type
* feat: add lib applied remappings
* test: add lib linking tests
* Update ethers-solc/src/artifacts/mod.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* Update ethers-solc/src/artifacts/mod.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* Update ethers-solc/src/artifacts/mod.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* Update ethers-solc/src/artifacts/mod.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* chore: rustfmt
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-04-28 05:18:24 -07:00
Matthias Seitz
5de7086ba7
fix(solc): use correct empty output selection ( #1185 )
2022-04-27 21:27:54 +03:00
joshieDo
a0f41c51af
fix(solc): when compiler-out metadata is empty and there's no `internalType` ( #1182 )
...
* add another compiler-out with fixes
* update changelog
2022-04-27 15:37:09 +03:00
Matthias Seitz
8dd72723d1
feat: add minimal ast bindings ( #1167 )
...
* feat: add minimal ast bindings
* feat: add recursive nodes
2022-04-23 02:20:46 -07:00
Matthias Seitz
f4eb4029b4
chore(solc): include error code in diagnostic ( #1171 )
2022-04-23 01:41:13 -07:00
Matthias Seitz
ac3e12fe8a
feat: add standardjson compiler input type ( #1169 )
2022-04-23 01:39:31 -07:00
Matthias Seitz
92b1ad8fb1
feat: add debug info bindings ( #1161 )
2022-04-21 19:29:21 +02:00
Matthias Seitz
3d4356f531
fix(solc): strip root path from remappings and sources for standard json ( #1136 )
...
* fix(solc): strip root path from remappings and sources for standard json input
* fix: use consistent contract for tests
2022-04-11 13:36:06 -07:00
Matthias Seitz
876a19d636
chore: make ipfs the default bytecodehash again ( #1128 )
2022-04-09 15:11:46 -07:00
Matthias Seitz
23e45e8531
fix: sanitize compilerinput based on version ( #1111 )
...
* fix: sanitize compilerinput based on version
* test: add compiler test
* chore: remove unused warnings
* style: make once lazy
2022-04-05 12:00:04 -07:00
Matthias Seitz
06df7f41cc
feat(solc): add bytecode hash variants ( #1104 )
...
* feat(solc): add bytecode hash variants
* make None the Bytecodehash default
2022-04-04 06:57:20 -07:00
Matthias Seitz
916e9a7334
chore(clippy): add some deny lints ( #1064 )
...
* feat: add deny lints
* trim ethers core
* trim ethers eip712
* deny ethers contract derive
* deny ethers contract abigen
* deny ethers contract
* deny ethers providers
* chore: add denies and fix unused deps
* doc: fix links
* fix: wasm build
* doc: fix links
* doc: fix links
* doc: fix inline doc links
* docs: fix intra doc links
2022-03-19 10:05:39 -07:00
Matthias Seitz
b6b5b09f4a
feat(abigen): add abi object deserializer and generate deploy function ( #1030 )
...
* feat(abigen): add abi object deserializer
* chore: rustfmt
* refactor: use enum type for deser abi
* refactor: use enum types for deser
* chore: rustfmt
* feat: add bytecode field
* feat: generate bytecode static
* feat: generate deployment function
* refactor: deploy function
* feat: add contract deployer type
* feat: make 0x prefix optional
* feat: add deploy function
* feat: add deploy example
* chore: update CHANGELOG
* chore(clippy): make clippy happy
2022-03-18 21:23:33 -07:00
Matthias Seitz
d1f46f4c2c
feat(solc): more artifact trait functions ( #1057 )
...
* style: split artifacts mod and create contract and bytecode mods
* chore: rustfmt
* feat(solc): more artifact trait functions
* feat: add missing impl
2022-03-17 12:48:55 -07:00
Matthias Seitz
65b1751cf8
style: split artifacts mod and create contract and bytecode mods ( #1052 )
...
* style: split artifacts mod and create contract and bytecode mods
* chore: rustfmt
2022-03-17 07:51:43 -07:00
Matthias Seitz
b579dc183a
feat(solc): add viaIR option ( #1049 )
2022-03-17 04:24:50 -07:00
Matthias Seitz
5314c4e618
fix(solc): use lowercase when comparing paths ( #1041 )
...
* fix(solc): use lowercase when comparing paths
* trace keys
* test: add lowercase contract test
2022-03-17 01:27:03 -07:00
Matthias Seitz
2d75f9f1e7
feat(solc): support customized output selection pruning ( #1039 )
...
* feat(solc): support customized output selection pruning
* chore(clippy): make clippy happy
2022-03-16 07:36:35 -07:00
Matthias Seitz
ff29e96380
feat(solc): optimize output selection in cache mode ( #1029 )
...
* feat(solc): add mock project generator
* feat: mock project
* refactor: rename to mock
* feat(solc): mock project support
* refactor: move output selection to new type
* refactor: revert filter implementation
* feat: filter sources
* feat: support filtering
* refactor: update function signatures
* feat: optimize output
* chore: export helper macros
* fix(deps): add required features
* style: allow unused
* feat: also generate artifactless files
* feat: add create function
* chore(clippy): make clippy happy
* feat: add helper function
* test: add state machine test
* test: add more mock tests
2022-03-15 08:58:33 -07:00
Matthias Seitz
1b1cde0ee3
fix(solc): use correct types ( #1004 )
2022-03-10 10:46:47 -08:00
AlexK
e1d66b8cd3
feat(solc): yul compilation ( #994 )
...
* added yul compilation
* fix doctest
* fixes
* changelog
* cleanup
* fmt
* test update
* lint
* ci fix
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-03-10 10:42:02 -08:00
Matthias Seitz
184cffaca3
fix(abigen/solc): make abigen work with ethers-solc and abiencoderv2 ( #952 )
...
* feat(solc): add lossless abi
* fix(abigen): make abigen work with ethers-solc and abiencoderv2
* chore: update CHANGELOG
2022-02-23 12:46:52 +02:00
Matthias Seitz
60515d9404
fix(solc): consistent serde for linked and unlinked bytecode ( #948 )
2022-02-22 16:23:23 +02:00