protolambda
224c98a094
last() method, no negative index lookups
2019-06-20 20:55:17 +02:00
protolambda
f157745248
resolve some remaining list-rework rebase details
2019-06-20 20:42:19 +02:00
protolambda
82240d8dbd
fix vector default type
2019-06-20 20:31:16 +02:00
protolambda
977856b06f
ssz typing now subclasses list/bytes, much easier to work with than wrapped list/bytes functionality
2019-06-20 20:30:42 +02:00
protolambda
4e747fb887
fixes for class based ssz typing
2019-06-20 20:25:22 +02:00
protolambda
7cdec746b4
fix field iteration crash in ssz typing
2019-06-20 20:20:45 +02:00
protolambda
a33c67894e
update ssz testing/debug utils
2019-06-20 20:20:45 +02:00
protolambda
6b82e3faa5
Modifications from Vitalik, to enable SSZ Partials
2019-06-20 20:20:07 +02:00
protolambda
5be0c57aad
fix linting + mypy
2019-06-20 20:17:29 +02:00
protolambda
4aefc078e9
list-rework type fixes
2019-06-20 20:11:39 +02:00
protolambda
8c6ddd5233
container field coercion
2019-06-20 20:05:57 +02:00
protolambda
73ba419d64
check virtual lengths, fix imports
2019-06-20 20:05:57 +02:00
protolambda
0a43003b42
minor test improvements
2019-06-20 20:03:21 +02:00
protolambda
8bd2e878ef
bugfixes and typing improvements
2019-06-20 20:03:21 +02:00
protolambda
08e6f32f38
typing improvements, type testing
2019-06-20 20:03:21 +02:00
protolambda
4ebdceaf12
highly experimental typing
2019-06-20 19:57:50 +02:00
protolambda
108410d862
Change byte to explict class instead of newtype
2019-06-20 19:56:09 +02:00
protolambda
82e7392b17
default method for container is recognized now
2019-06-20 19:56:09 +02:00
Diederik Loerakker
3a9b1fb72c
Update test_libs/pyspec/eth2spec/utils/ssz/ssz_impl.py
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-06-20 19:56:09 +02:00
Diederik Loerakker
54a1fa9abe
Update test_libs/pyspec/eth2spec/utils/ssz/ssz_impl.py
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-06-20 19:56:09 +02:00
protolambda
cd5f59eb74
fix bytes value check, fix default-type checking
2019-06-20 19:55:53 +02:00
protolambda
b6cf809d9b
more improvements, and implement new space-efficient merkleization with padding support
2019-06-20 19:54:59 +02:00
protolambda
d1ecfd510e
typing improvements
2019-06-20 19:53:32 +02:00
vbuterin
8919f628cb
Update test_libs/pyspec/eth2spec/utils/ssz/ssz_impl.py
...
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-06-20 19:52:02 +02:00
Vitalik Buterin
7c4232455c
Added get_container_type to get_zero_value
2019-06-20 19:52:02 +02:00
protolambda
5ddfe34f0c
Simplified SSZ impl
2019-06-20 19:51:38 +02:00
Carl Beekhuizen
241fe34da7
Workaround for python3.6
2019-06-19 22:37:51 +02:00
Carl Beekhuizen
3418c3506f
Merge dev and resolve conflicts (please let the CI tests pass with the new dev)
2019-06-19 20:27:54 +02:00
Carl Beekhuizen
31a4700223
Merge conflicts on `dev`
2019-06-17 22:09:43 -04:00
Hsiao-Wei Wang
01e9f18713
Merge branch 'dev' into mypy
2019-06-17 17:51:46 -04:00
Hsiao-Wei Wang
9af9bbf42b
Merge branch 'dev' into mypy
2019-06-17 17:51:00 -04:00
Carl Beekhuizen
2ea6cede3e
Moves fork-choice objects away from SSZ
2019-06-17 10:48:33 -04:00
Carl Beekhuizen
9f2d06b2e7
Somehow I had indented with 5 spaces everywhere.
2019-06-16 16:02:56 -04:00
Carl Beekhuizen
f421850dc9
Fixes tests! Thanks @hwwhww!
2019-06-16 15:53:42 -04:00
Carl Beekhuizen
4deb311b71
Debugging 1st test
2019-06-16 12:17:31 -04:00
Carl Beekhuizen
5d10cd63c7
SSZ (partially) handles Dicts
2019-06-16 09:52:52 -04:00
Hsiao-Wei Wang
00a68e28b5
Define Custom Types via function_puller
2019-06-15 16:57:50 -04:00
Danny Ryan
7c0cc7f801
fix #1169 bytes type error
2019-06-13 14:32:45 -06:00
Hsiao-Wei Wang
7a366828ba
Make phase0 pass
2019-06-12 14:54:00 -04:00
protolambda
9ec395c04f
fig linting + improve docs + structure of hash optimization
2019-06-11 21:53:38 +02:00
protolambda
f4814862fe
fix typing check, add zero-hash cache to hash function
2019-06-11 19:23:45 +02:00
protolambda
22f624e12e
re-order type check for more speed
2019-06-11 18:08:27 +02:00
Hsiao-Wei Wang
9f454185f8
WIP!
...
1. Use custom types in SSZ declaration
2. Casting
2019-06-11 00:44:54 -04:00
Hsiao-Wei Wang
8b64f37d22
Make uint64 be `class` for type hinting
2019-06-10 23:16:59 -04:00
Hsiao-Wei Wang
9fc197af67
class Bytes32
2019-06-10 11:10:13 -04:00
Carl Beekhuizen
60d9dc68c4
Apply suggestions from @djrtwo's code review
2019-06-05 21:49:30 +02:00
protolambda
b9abc5f2cf
List[uint64] is not like a type but just for annotation, same for other Generics with __args__, Vector/BytesN work, because their metaclasses produce non-parametrized types, so don't check vector values when type contains args
2019-06-05 18:53:34 +02:00
protolambda
1cc7c7309d
change to issubclass, hope parametrized external type is ok
2019-06-05 18:28:09 +02:00
protolambda
a7554d503c
fix for typing check of vector elements with non-type element type (annotation)
2019-06-05 18:02:39 +02:00
Carl Beekhuizen
d761b6f041
Implements new SSZ types
2019-06-05 15:29:26 +02:00
protolambda
4bf3a26afc
fix formatting
2019-06-04 18:18:18 +02:00
protolambda
6168a90a20
speed and simplicity improvement for next_power_of_two function
2019-06-04 18:12:23 +02:00
protolambda
578328bb54
call comments: remove partials from ssz rework PR, review that seperately
2019-06-04 18:11:50 +02:00
Carl Beekhuizen
f6bb47c402
Apply @dankrad's suggestions from code review
2019-06-04 17:08:18 +02:00
protolambda
59137fd5a6
fix get_zero_value exception raise + fix up type checks
2019-06-04 15:40:15 +02:00
Diederik Loerakker
8631cad251
Apply suggestions from code review
...
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-06-04 15:22:34 +02:00
Hsiao-Wei Wang
6d55ba9c8c
minor refactor
2019-06-04 18:59:52 +08:00
Hsiao-Wei Wang
a7ee6f108e
Refactor
2019-06-04 17:42:21 +08:00
Hsiao-Wei Wang
a5576059f8
Fix `ssz_partials.py` linter errors
2019-06-03 17:19:22 +08:00
protolambda
fae1e9285d
resolve some new lint issues detected by newer version, and a few looked over ones
2019-06-01 02:40:29 +02:00
protolambda
f3a517b6f6
fix minor lint problems
2019-06-01 02:32:11 +02:00
protolambda
7df788c7d5
resolve linting problems, except ssz-partials
2019-06-01 02:22:14 +02:00
protolambda
df25f22f01
get rid of scope-problem inducing init trick
2019-06-01 01:55:20 +02:00
protolambda
1c734d30a0
fix utils init
2019-06-01 01:50:28 +02:00
protolambda
3cb43fcc27
fix ssz infer type decorator, one None argument too many
2019-06-01 01:49:52 +02:00
protolambda
e044305457
Merge branch 'dev' into ssz-impl-rework
2019-06-01 01:34:49 +02:00
Carl Beekhuizen
5155bc6c4f
Makes everything pass around
2019-05-30 22:57:18 +02:00
Vitalik Buterin
3630b2ea9f
Merge branch 'ssz-impl-rework' of github.com:ethereum/eth2.0-specs into ssz-impl-rework
2019-05-30 09:42:47 -04:00
Vitalik Buterin
8fae0f8c78
Added support for SSZ partials
2019-05-30 09:42:42 -04:00
Hsiao-Wei Wang
ebdf74c6b8
kick the CI
2019-05-30 15:57:39 +08:00
Vitalik Buterin
053d6e7805
Simplified hash tree root
2019-05-28 14:33:12 -04:00
Vitalik Buterin
4955c40a7b
merge
2019-05-28 09:44:53 -04:00
Vitalik Buterin
19601df572
Starting work on partials
2019-05-28 09:30:35 -04:00
Hsiao-Wei Wang
f0ceefc36d
Make `test_libs/pyspec/tests` pass
...
1. Use `typing_inspect` library to check if it's `typing.List[Any]`. Use it in `is_list_type`.
2. Add `__hash__`, `__eq__`, `__repr__` methods to some classes.
2019-05-28 13:57:42 +08:00
protolambda
5e28adf556
bugfix: don't forget about var-length bytes getting a length mixin
2019-05-28 00:51:27 +02:00
protolambda
9e61cc2ed3
bugfix: typing edge-case: python bool is subclass of int.
2019-05-28 00:45:13 +02:00
protolambda
0e9a047b1d
Merge branch 'dev' into ssz-impl-rework
2019-05-28 00:42:35 +02:00
protolambda
d023d2d20f
lots of bugfixes
2019-05-27 23:40:05 +02:00
protolambda
c68944bd53
separate type (direct) from kinds (alias incl)
2019-05-27 22:18:34 +02:00
protolambda
d63b553a2d
efficiency bugfix in bytes encoding, improve typing doc + bugfix
2019-05-27 21:45:47 +02:00
protolambda
f3088884b3
Minor adjustments + getting the beacon spec doc ready
2019-05-27 20:29:53 +02:00
Danny Ryan
d3d8b36365
Merge branch 'dev' into v06x-to-dev
2019-05-27 11:09:52 -06:00
protolambda
d5eab257d0
improve impl, box less used integer types, use uint64 as default
2019-05-27 18:01:46 +02:00
Vitalik Buterin
e14f789779
Presentation edits
2019-05-27 08:07:00 -04:00
Vitalik Buterin
5b6a98b107
Some updates
2019-05-25 14:06:42 -04:00
protolambda
ed4416ba34
update SSZ implementation
2019-05-25 00:05:03 +02:00
protolambda
cfc037fe75
tags applied after generation of vector (and only if), make BLS decorator
2019-05-21 22:28:47 +02:00
Carl Beekhuizen
24c4d21d5e
Minor edits + PEP8
2019-05-21 12:41:24 +02:00
Carl Beekhuizen
6b062405c9
merge dev -> carl-exec-phase1
2019-05-20 20:59:08 +02:00
Carl Beekhuizen
cfed4bb41c
Adds missing functions
2019-05-20 10:50:07 +02:00
Danny Ryan
a2108741e8
fix tests with new starT_epoch and end_epoch in Crosslink
2019-05-19 15:47:59 -06:00
Carl Beekhuizen
306a613c8a
Simplify minimal SSZ again
2019-05-16 21:01:32 +02:00
Carl Beekhuizen
3e085947b7
Linted :)
2019-05-16 12:38:50 +02:00
protolambda
a4e22639f3
fix/update bls funcs for testing
2019-05-15 18:37:11 +02:00
protolambda
904e2e9c0c
BLS on/off deco
2019-05-13 23:15:02 +02:00
protolambda
08faa86d70
POC ssz types spec build + update spec defs, typing still needs work
2019-05-12 23:56:53 +02:00
protolambda
761c9e55fe
SSZ impl. rework started, see issue 1064
2019-05-12 23:16:17 +02:00
Dankrad Feist
6ab55efd3d
Phase 0 tests work on phase 1, yay :)
2019-05-08 23:30:08 +01:00
Dankrad Feist
a604d03dff
Basic phase 1 pulling + correcting syntax errors in phase 1
2019-05-07 12:13:22 +01:00
protolambda
bbaa1417a8
remove incorrect unnecessary offset
2019-05-02 09:16:01 +02:00