@@ -157,12 +157,20 @@ _finalNixpkgs: prevNixpkgs: let
157157 sha256 = "sha256-P/5v4fk6gtbXju+xyDE9enAsmch+gquzvYUIn4Kvs0Y=" ;
158158 } ;
159159
160+ pythonImportsCheck = [ ] ; # workaround for issue with pythonImportsCheckPhase
161+
160162 propagatedBuildInputs = [
163+ parsimonious-081
161164 eth-utils-110
162165 eth-typing-230
163166 ] ;
164167
165- disabledTests = old . disabledTests ++ [ "test_coincurve_to_native_invalid_signatures" ] ;
168+ disabledTests =
169+ old . disabledTests
170+ ++ [
171+ "test_coincurve_to_native_invalid_signatures"
172+ "test_get_abi_strategy_returns_certain_strategies_for_known_type_strings"
173+ ] ;
166174 } ) ;
167175
168176 eth-keyfile-051 = prevNixpkgs . python3Packages . eth-keyfile . overridePythonAttrs ( old : rec {
@@ -173,8 +181,7 @@ _finalNixpkgs: prevNixpkgs: let
173181 repo = "eth-keyfile" ;
174182 rev = "v${ version } " ;
175183 fetchSubmodules = true ;
176- leaveDotGit = true ;
177- sha256 = "sha256-IG2zO0XnI96UptDmvrBn+wG64oSSRakUBsc8QTsR/NE=" ;
184+ sha256 = "sha256-w3baJFYBn8N5UGjR4Bec8c1UH9O0vbmPpsMfw9KGHCg=" ;
178185 } ;
179186
180187 propagatedBuildInputs = [
@@ -184,7 +191,125 @@ _finalNixpkgs: prevNixpkgs: let
184191 prevNixpkgs . python3Packages . setuptools
185192 ] ;
186193 } ) ;
187- mythril = prevNixpkgs . callPackage ./packages/python-modules/mythril/default.nix { inherit py-ecc-410 eth-utils-110 eth-keyfile-051 eth-typing-230 ; } ;
194+
195+ eth-abi-211 = prevNixpkgs . python3Packages . eth-abi . overridePythonAttrs ( old : rec {
196+ version = "2.1.1" ;
197+
198+ src = prevNixpkgs . fetchFromGitHub {
199+ owner = "ethereum" ;
200+ repo = "eth-abi" ;
201+ rev = "v${ version } " ;
202+ fetchSubmodules = true ;
203+ sha256 = "sha256-b4rlmyCP1bg4O3gaRNWTPo4ALlidK4gUx0WrsJVHu4g=" ;
204+ } ;
205+
206+ nativeBuildInputs = [ parsimonious-081 ] ;
207+
208+ propagatedBuildInputs = [
209+ eth-utils-110
210+ eth-typing-230
211+ ] ;
212+ } ) ;
213+
214+ parsimonious-081 = prevNixpkgs . python3Packages . eth-abi . overridePythonAttrs ( old : rec {
215+ pname = "parsimonious" ;
216+ version = "0.8.1" ;
217+
218+ src = prevNixpkgs . python3Packages . fetchPypi {
219+ inherit pname version ;
220+ hash = "sha256-Ot0ziJLVgODLOxo55KG0J/+faHhY/dYQlwU3Qjkan2s=" ;
221+ } ;
222+
223+ pythonImportsCheck = [ ] ; # workaround for issue with pythonImportsCheckPhase
224+
225+ propagatedBuildInputs = [
226+ prevNixpkgs . python3Packages . six
227+ prevNixpkgs . python3Packages . regex
228+ ] ;
229+ } ) ;
230+
231+ typing-extensions-31002 = prevNixpkgs . python3Packages . typing-extensions . overridePythonAttrs ( old : rec {
232+ pname = "typing_extensions" ;
233+ version = "3.10.0.2" ;
234+
235+ src = prevNixpkgs . python3Packages . fetchPypi {
236+ inherit pname version ;
237+ sha256 = "49f75d16ff11f1cd258e1b988ccff82a3ca5570217d7ad8c5f48205dd99a677e" ;
238+ } ;
239+
240+ checkInputs = prevNixpkgs . lib . optional ( prevNixpkgs . python3Packages . pythonOlder "3.5" ) prevNixpkgs . python3Packages . typing ;
241+ nativeBuildInputs = with prevNixpkgs . python3Packages ; [
242+ flit-core
243+ setuptools
244+ ] ;
245+ } ) ;
246+
247+ pyparsing-247 = prevNixpkgs . python3Packages . pyparsing . overridePythonAttrs ( old : rec {
248+ pname = "pyparsing" ;
249+ version = "2.4.7" ;
250+
251+ src = prevNixpkgs . fetchFromGitHub {
252+ owner = "pyparsing" ;
253+ repo = pname ;
254+ rev = "pyparsing_${ version } " ;
255+ sha256 = "sha256-0Dyzw3xiCGhLbXPcL2cq2fZuN1N5StSZ/I86gQHy7pI=" ;
256+ } ;
257+
258+ pythonImportsCheck = [ ] ;
259+ passthru . tests = { } ;
260+ doCheck = true ;
261+ checkInputs = [ prevNixpkgs . python3Packages . coverage ] ;
262+ checkPhase = ''
263+ ${ prevNixpkgs . python3Packages . coverage } /bin/coverage run --branch simple_unit_tests.py
264+ ${ prevNixpkgs . python3Packages . coverage } /bin/coverage run --branch unitTests.py
265+ '' ;
266+ nativeBuildInputs = with prevNixpkgs . python3Packages ; [
267+ setuptools
268+ ] ;
269+ } ) ;
270+
271+ markupsafe-201 = prevNixpkgs . python3Packages . markupsafe . overridePythonAttrs ( old : rec {
272+ pname = "markupsafe" ;
273+ version = "2.0.1" ;
274+
275+ src = prevNixpkgs . python3Packages . fetchPypi {
276+ pname = "MarkupSafe" ;
277+ inherit version ;
278+ sha256 = "02k2ynmqvvd0z0gakkf8s4idyb606r7zgga41jrkhqmigy06fk2r" ;
279+ } ;
280+ } ) ;
281+
282+ coverage-650 = prevNixpkgs . python3Packages . coverage . overridePythonAttrs ( old : rec {
283+ pname = "coverage" ;
284+ version = "6.5.0" ;
285+
286+ src = prevNixpkgs . python3Packages . fetchPypi {
287+ inherit pname version ;
288+ sha256 = "sha256-9kLpB1TuPgaw5+UbzjN5WQ52t/drcI4acf8EP4cCXIQ=" ;
289+ } ;
290+ } ) ;
291+
292+ mythril = prevNixpkgs . callPackage ./packages/python-modules/mythril/default.nix {
293+ inherit
294+ eth-typing-230
295+ eth-utils-110
296+ py-ecc-410
297+ eth-keyfile-051
298+ parsimonious-081
299+ eth-keys-034
300+ eth-abi-211
301+ py-solc-x
302+ typing-extensions-31002
303+ pyparsing-247
304+ markupsafe-201
305+ coverage-650
306+ blake2b-py
307+ py-flags
308+ ;
309+ } ;
310+ py-solc-x = prevNixpkgs . callPackage ./packages/python-modules/py-solc-x/default.nix { } ;
311+ blake2b-py = prevNixpkgs . callPackage ./packages/python-modules/blake2b-py/default.nix { } ;
312+ py-flags = prevNixpkgs . callPackage ./packages/python-modules/py-flags/default.nix { } ;
188313in {
189314 metacraft-labs = rec {
190315 solana = solana-full-sdk ;
221346 inherit rapidsnark ;
222347 inherit rapidsnark-server ;
223348
224- inherit eth-keyfile-051 mythril ;
349+ inherit mythril ;
350+ inherit blake2b-py ;
351+ inherit py-solc-x ;
225352 } ;
226353}
0 commit comments