- 11 Aug, 2020 2 commits
-
-
Whyrusleeping authored
Always allocate scratch space when marshalling into a map.
-
Steven Allen authored
We use it for writing the keys.
-
- 10 Aug, 2020 1 commit
-
-
Whyrusleeping authored
optimize byte reading
-
- 07 Aug, 2020 1 commit
-
-
Steven Allen authored
When using cbor-gen, we _usually_ work with byte buffers/readers. Calling `ReadByte` on a byte.Reader/byte.Buffer is much faster than calling `Read` and copying into a slice. name old time/op new time/op delta Marshaling-4 911ns ± 2% 904ns ± 5% ~ (p=0.646 n=9+10) Unmarshaling-4 4.46µs ± 1% 3.94µs ± 2% -11.55% (p=0.000 n=10+8) LinkScan-4 4.65µs ± 2% 4.01µs ± 2% -13.76% (p=0.000 n=9+10) Deferred-4 3.68µs ± 3% 3.02µs ± 4% -17.91% (p=0.000 n=10+10) name old alloc/op new alloc/op delta Marshaling-4 160B ± 0% 160B ± 0% ~ (all equal) Unmarshaling-4 3.46kB ± 0% 3.46kB ± 0% ~ (all equal) LinkScan-4 880B ± 0% 880B ± 0% ~ (p=0.650 n=10+10) Deferred-4 96.0B ± 0% 96.0B ± 0% ~ (all equal) name old allocs/op new allocs/op delta Marshaling-4 10.0 ± 0% 10.0 ± 0% ~ (all equal) Unmarshaling-4 43.0 ± 0% 43.0 ± 0% ~ (all equal) LinkScan-4 25.0 ± 0% 25.0 ± 0% ~ (all equal) Deferred-4 3.00 ± 0% 3.00 ± 0% ~ (all equal)
-
- 06 Aug, 2020 2 commits
-
-
Whyrusleeping authored
Optimize decoding
-
Steven Allen authored
-
- 05 Aug, 2020 4 commits
-
-
Steven Allen authored
This way, we can't blow out our stack.
-
Steven Allen authored
We use this quite frequently so it should be fast. Note: this removes the depth restriction because the algorithm is no longer recursive.
-
Steven Allen authored
Type asserting to a concrete type is ~10x faster than type asserting to an interface. This change has a significant performance impact in my test. readByte used to account for 10.8% of the time, now it accounts for 3.4%.
-
Steven Allen authored
Buffering could lead to reading over the end of the object, corrupting the next object. This patch also gets rid of "PeekByte" and uses the standard ReadByte/UnreadByte interfaces. That way, we can avoid wrapping the byte reader in the happy path, saving some overhead.
-
- 23 Jul, 2020 3 commits
-
-
Jakub Sztandera authored
Fix named string issue
-
Jakub Sztandera authored
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
-
Jakub Sztandera authored
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
-
- 20 Jul, 2020 2 commits
-
-
Jakub Sztandera authored
Fix encoding/decoding fixed byte arrays
-
Steven Allen authored
-
- 15 Jul, 2020 1 commit
-
-
Łukasz Magiera authored
fix overread on scanforlinks
-
- 14 Jul, 2020 2 commits
-
-
whyrusleeping authored
-
whyrusleeping authored
-
- 10 Jul, 2020 5 commits
-
-
Whyrusleeping authored
chore: update go-cid and remove xerrors
-
Whyrusleeping authored
correctly map typegen to cbg in all cases
-
Steven Allen authored
-
Whyrusleeping authored
fix: clear struct state on unmarshal
-
Steven Allen authored
We needed this to apply to maps, slices, etc.
-
- 06 Jul, 2020 2 commits
-
-
Lucas Molas authored
deferred: restrict max length
-
Lucas Molas authored
-
- 03 Jul, 2020 3 commits
-
-
Whyrusleeping authored
reduce number of allocations in ScanForLinks
-
whyrusleeping authored
-
whyrusleeping authored
-
- 19 Jun, 2020 1 commit
-
-
Steven Allen authored
fixes #21 We could also make sure every field write writes to the field, no matter what. However, this is much safer.
-
- 04 May, 2020 4 commits
-
-
Whyrusleeping authored
attempt to allocate less by using shared buffers
-
Jeromy authored
-
Jeromy authored
-
Jeromy authored
-
- 03 May, 2020 3 commits
- 02 May, 2020 1 commit
-
-
Whyrusleeping authored
use new cid methods for less allocs
-
- 01 May, 2020 3 commits
-
-
Jeromy authored
-
Jeromy authored
-
Whyrusleeping authored
properly handle roundtripping Deferred with 'null' value
-