Commit graph

10791 commits

Author SHA1 Message Date
lukechampine
d1a570a4b8
chacha: Fix open docstring 2019-12-30 13:35:16 -05:00
lukechampine
d6ca2323cf
chacha: Use error set instead of bool 2019-12-30 13:35:13 -05:00
lukechampine
1953b60599
chacha20poly1305: Return false on short ciphertext 2019-12-30 13:35:05 -05:00
lukechampine
ae7bb4ecc0
chacha20poly1305: verify tag in constant time 2019-12-30 13:34:57 -05:00
lukechampine
fbe7d8c1cb
crypto: Add chacha20poly1305 2019-12-30 13:34:53 -05:00
daurnimator
42727c73f9
std: fix typo in comment 2019-12-31 03:06:33 +11:00
daurnimator
ef3a01a367
std: json.unescapeString doesn't need to take an allocator 2019-12-31 02:26:09 +11:00
daurnimator
04a2a4a7cb
std: track decoded string length in std.json tokenizer 2019-12-31 02:26:06 +11:00
daurnimator
0def92cff4
std: use enum literals in std.json 2019-12-30 23:47:33 +11:00
daurnimator
80d37a13c0
std: use a union(enum) for std.json.Token 2019-12-30 23:47:29 +11:00
daurnimator
51943ff432
std: meta.TagPayloadType takes the tag type of the union 2019-12-30 23:09:18 +11:00
daurnimator
17cc511ea4
std: fmt std/json.zig 2019-12-30 22:34:19 +11:00
Haze Booth
c70a673c6e array literal address of fix 2019-12-30 05:48:27 -05:00
Andrew Kelley
e0c7d12043
update std/json.zig to latest language changes
fixes regression from 54231e832b
2019-12-29 19:00:27 -05:00
Benoit Giannangeli
fb2f0cc497 ArrayList: ptrAt function returns pointer to item at given index 2019-12-29 18:46:59 -05:00
Andrew Kelley
54231e832b
Merge pull request #3648 from xackus/json-unescape
breaking: JSON unescape
2019-12-29 18:31:10 -05:00
data-man
6af39aa49a Fixes #3966 2019-12-29 18:19:03 -05:00
Andrew Kelley
6b960331ee
Merge pull request #3968 from daurnimator/sigprocmask
Clean up linux sigprocmask, raise
2019-12-29 18:03:09 -05:00
Vexu
f5e7d2d00c
translate-c fix bugs
Thanks @daurnimator
2019-12-29 14:01:59 +02:00
Vexu
59cc7072e2
translate-c-2 use intCast in most places 2019-12-29 11:04:59 +02:00
Vexu
3f7bab7373
fix translate-c taking ages 2019-12-29 11:04:58 +02:00
Marc Tiehuis
bda355d976
Merge pull request #3992 from ForLoveOfCats/BigIntToStringLeak
Add missing deferred deinits to `math.big.Int.toString`
2019-12-29 14:47:59 +13:00
daurnimator
2662e50d27
std: sentinel terminated pointers for utf16 apis 2019-12-29 10:35:05 +11:00
ForLoveOfCats
b28824ef66 Add missing deferred deinits to math.big.Int.toString (mem leak fix) 2019-12-28 15:31:32 -05:00
daurnimator
edb5deb39c
std: unicode codepoints are 21 bits 2019-12-28 16:49:59 +11:00
daurnimator
ab6065407d
std: simplify utf8ToUtf16Le
Also faster, on my machine unicode/throughput_test.zig now gives e.g.
> original utf8ToUtf16Le: elapsed: 1048 ns (0 ms)
> new utf8ToUtf16Le: elapsed: 971 ns (0 ms)
2019-12-28 16:49:59 +11:00
daurnimator
5843a6e3bc
std: optimise utf8ByteSequenceLength
Also tested (but not as fast):
```zig
pub fn utf8ByteSequenceLength(first_byte: u8) !u3 {
    const len = @clz(u8, ~first_byte);
    if (len == 0) return 1;
    if (len < 4) return @intCast(u3, len);
    return error.Utf8InvalidStartByte;
}
```
2019-12-28 14:39:38 +11:00
daurnimator
8b72eedc76
std: add warm up phase to benchmark
In my tests, whatever ran first was getting much better numbers.
Additionally, add alignment requirements so that comparison is fair.
2019-12-28 14:39:38 +11:00
daurnimator
a81c0ba2e7
std: fix unicode encoding of astral plane codepoints to utf16 2019-12-28 14:39:38 +11:00
kprotty
1c5a1284e3 typo fix 2019-12-22 21:45:26 -06:00
kprotty
b8fabb3426 ResetEvent: broadcast by default 2019-12-22 21:45:26 -06:00
Andrew Kelley
28dbdba37e
Merge pull request #3935 from Vexu/translate-c-2
Translate-c-2 the rest
2019-12-22 16:12:56 -05:00
daurnimator
95c83388e4
std: use pid_t where appropriate 2019-12-22 20:20:58 +11:00
daurnimator
59348240d7
std: use wrappers from raise() rather than raw syscalls 2019-12-22 20:20:58 +11:00
daurnimator
6de4bd850c
std: add tkill and tgkill for linux 2019-12-22 20:20:58 +11:00
daurnimator
c31afc3736
std: remove high level linux sigprocmask wrappers 2019-12-22 20:20:58 +11:00
daurnimator
9577ff1c90
std: use simpler sigset_t definition 2019-12-22 20:20:53 +11:00
Jethro Nederhof
ba1d213f48 freebsd: add missing OS and libc bits 2019-12-22 02:27:23 -05:00
daurnimator
96c9c38b35
std: sigprocmask set is optional 2019-12-22 12:03:03 +11:00
Andrew Kelley
290dc5d95b
zig fmt support for slice sentinel syntax 2019-12-21 14:03:36 -05:00
LemonBoy
333eec557f Initial support for static PIE executables 2019-12-21 17:34:05 +01:00
Nathan Michaels
45339aec02 Fix wording on deinit. 2019-12-21 01:30:55 -05:00
Andrew Kelley
8918cb06fc
sentinel slicing improvements
* add runtime safety for slicing pointers, arrays, and slices.
 * slicing without a sentinel value results in non-sentineled slice
 * improved `std.debug.panic` handling of panic-during-panic
2019-12-20 18:28:59 -05:00
Andrew Kelley
26f3c2d061
fix std.mem.addNullByte and implement sentinel slicing
see #3770
2019-12-20 18:28:56 -05:00
Nathan Michaels
33b5dbb82c Document std.Mutex.
Not sure what the build platform is for the generated documentation,
and it's worth thinking about how best to deal with this pattern. It
might be worth figuring out how to rewrite this to have a single
definition of the public API with the implementation chosen at compile
time.
2019-12-19 23:42:27 -05:00
Vexu
d172a7335c
translate-c-2 copy parametrs to stack 2019-12-20 00:12:08 +02:00
Vexu
61482be153
translate-c-2 improve macro fn ptr caller 2019-12-19 20:58:48 +02:00
Vexu
f837c7c9cd
translate-c-2 compound assign 2019-12-19 16:13:28 +02:00
Vexu
62bfff5e87
translate-c-2 fix expression grouping bugs 2019-12-18 13:32:19 +02:00
Vexu
21bc3353b8
translate-c-2 character literals and more test fixes 2019-12-18 01:04:01 +02:00