577 Commits

Author SHA1 Message Date
kprotty
4dbfc48ab3 Disable asm("yield") for arm in SpinLock.yieldCpu() because of CI 2019-11-05 16:16:03 -06:00
kprotty
c9db420a09 Adaptive Mutex:
- uses std.ThreadParker
- supports static initialization (deprecates StaticallyInitializedMutex)
2019-11-05 16:14:43 -06:00
kprotty
465ebf494d ThreadParker implementation 2019-11-05 15:58:58 -06:00
kprotty
14209cf615 make SpinLock.Backoff pub 2019-11-05 13:43:17 -06:00
Andrew Kelley
9bc4f8ea77
zig build: addIncludeDir does -I instead of -isystem 2019-11-05 14:32:17 -05:00
Vexu
a26e9fa723 add special formatting for ipv4-mapped ipv6 addresses 2019-11-05 12:05:34 -05:00
Andrew Kelley
4e9ab0306a
Merge pull request #3587 from LemonBoy/fix-things
Bunch'o'fixes
2019-11-05 11:44:07 -05:00
Shawn Landden
1c22cb5e51 fix noreturn function that may return.
we do not want undefined behavior here in --release-fast
and --release-small modes
2019-11-05 11:38:32 -05:00
Shawn Landden
55685ae780 remove duplicate isNan implementation 2019-11-05 11:34:33 -05:00
lukechampine
3d907b2943 crypto: Add support for AES-CTR 2019-11-05 11:33:11 -05:00
kprotty
84e370d0b2 Move hybrid yielding into its own struct 2019-11-05 09:31:29 -06:00
kprotty
0d4f4aad9e adaptive SpinLock 2019-11-05 08:16:08 -06:00
daurnimator
1657bead46 std: Add fifo useful for buffers 2019-11-04 17:44:01 -05:00
data-man
42ccdc2765 Replace AES variables to constants 2019-11-04 17:43:14 -05:00
Andrew Kelley
ce70a9be24
Merge pull request #3589 from Vexu/ipv6-improvements
Ipv6 improvements
2019-11-04 15:22:14 -05:00
Andrew Kelley
6c17282062
std.os.read can fail with ConnectionResetByPeer 2019-11-04 14:40:30 -05:00
Andrew Kelley
aaf50970a8
Merge pull request #3574 from lukechampine/aes
crypto: Add AES implementation
2019-11-04 14:39:40 -05:00
LemonBoy
c8b6e55299 Make the leb module available to non-std code 2019-11-04 20:33:40 +01:00
Luke Champine
eb95afbc66
remove speculative AES TODOs 2019-11-04 13:59:26 -05:00
Andrew Kelley
5db77e3c66
Merge pull request #3588 from daurnimator/tiny-std-fixes
Tiny std fixes
2019-11-04 13:25:37 -05:00
Brendan Hansknecht
52207f22de Add karatsuba to big ints 2019-11-04 13:20:03 -05:00
Vexu
6e786b60d4
support ipv4-mapped ipv6 addresses 2019-11-04 19:54:36 +02:00
Vexu
32ac1b5927
improve ipv6 parsing and formatting 2019-11-04 19:00:58 +02:00
daurnimator
c8463ce9b0
std: Add definitions for (deprecated) futimes and utimes C functions 2019-11-05 02:19:25 +11:00
daurnimator
6e635c6406
std: close is OSX specific 2019-11-05 02:16:30 +11:00
kprotty
bb6ad1a6c2 Remove StaticallyInitializedMutex 2019-11-03 21:09:51 -06:00
Luna
2e0dd5733f add FileNotFound to os.ConnectError error set 2019-11-02 15:49:15 -04:00
Luna
d535bf2c7d add FileNotFound error to os.connect 2019-11-02 15:49:15 -04:00
Andrew Kelley
f749bf0942
std.os: fix sendto, poll, recvfrom when linking libc
Thank you to Brendan Hansknecht for this patch.
2019-11-02 15:15:56 -04:00
lukechampine
f403aa6cee crypto: Add AES implementation 2019-11-01 22:42:25 -04:00
Andrew Kelley
d6dec80261
startup code respects root source file's event_loop if present 2019-10-31 14:21:04 -04:00
Andrew Kelley
081c62fc00
fix regression in std.os.dirent64 on linux 2019-10-31 13:56:15 -04:00
Tse
00382f6dae DragonFlyBSD tidyup 2019-10-31 13:53:32 -04:00
Andrew Kelley
d3d3e4e374
startup code sets up event loop if I/O mode is declared evented 2019-10-31 11:41:39 -04:00
Andrew Kelley
788848e123
std.net: fix reference to incorrect constant name 2019-10-30 23:03:49 -04:00
Andrew Kelley
61d5a0bf48
Merge branch 'std.net' 2019-10-30 21:30:16 -04:00
Andrew Kelley
6a15e8a7a7
add comments to disabled tests linking to the tracking issue 2019-10-30 21:29:45 -04:00
Tse
33cc204481 DragonFlyBSD support 2019-10-30 21:21:58 -04:00
Henry Wu
7c73503451 generated docs: move color to box-shadow CSS prop 2019-10-30 21:20:02 -04:00
Andrew Kelley
7b7ba51642
fix os.sockaddr being a union instead of a struct 2019-10-30 20:57:20 -04:00
Andrew Kelley
d7f15aa2cb
Merge remote-tracking branch 'origin/master' into std.net 2019-10-30 20:43:56 -04:00
Andrew Kelley
c52ee6efca
canonicalize std.os IPPROTO constants 2019-10-30 20:41:28 -04:00
Andrew Kelley
0de862e8ba
make std.net more portable
* Delete `std.net.TmpWinAddr`. I don't think that was ever meant to
   be a real thing.
 * Delete `std.net.OsAddress`. This abstraction was not helpful.
 * Rename `std.net.Address` to `std.net.IpAddress`. It is now an extern
   union of IPv4 and IPv6 addresses.
 * Move `std.net.parseIp4` and `std.net.parseIp6` to the
   `std.net.IpAddress` namespace. They now return `IpAddress` instead of
   `u32` and `std.net.Ip6Addr`, which is deleted.
 * Add `std.net.IpAddress.parse` which accepts a port and parses either
   an IPv4 or IPv6 address.
 * Add `std.net.IpAddress.parseExpectingFamily` which additionally
   accepts a `family` parameter.
 * `std.net.IpAddress.initIp4` and `std.net.IpAddress.initIp6` are
   improved to directly take the address fields instead of a weird
   in-between type.
 * `std.net.IpAddress.port` is renamed to `std.net.IpAddress.getPort`.
 * Added `std.net.IpAddress.setPort`.
 * `os.sockaddr` struct on all targets is improved to match the
   corresponding system struct. Previously I had made it a union of
   sockaddr_in, sockaddr_in6, and sockaddr_un. The new abstraction for
   this is now `std.net.IpAddress`.
 * `os.sockaddr` and related bits are added for Windows.
 * `os.sockaddr` and related bits now have the `zero` fields default
   to zero initialization, and `len` fields default to the correct size.
   This is enough to abstract the differences across targets, and so
   no more switch on the target OS is needed in `std.net.IpAddress`.
 * Add the missing `os.sockaddr_un` on FreeBSD and NetBSD.
 * `std.net.IpAddress.initPosix` now takes a pointer to `os.sockaddr`.
2019-10-30 20:22:05 -04:00
Andrew Kelley
618ee5b63a fixes for macos and 32 bit arches 2019-10-30 14:43:55 -04:00
Andrew Kelley
24b3da871d
fix regressions 2019-10-30 12:49:37 -04:00
Andrew Kelley
f5ff36271b
Merge branch 'testAddresses' of https://github.com/marler8997/zig into std.net 2019-10-30 12:33:47 -04:00
Andrew Kelley
0fb1388031
std.net: enable test for resolving DNS 2019-10-30 12:16:47 -04:00
Nathan Michaels
1f0bcefe4a Document PriorityQueue. 2019-10-30 01:05:00 -04:00
Andrew Kelley
16397241f6
fix std.net tests and std.net.TcpServer docs 2019-10-30 00:50:30 -04:00
Andrew Kelley
d5e438b36e
rename std.net.Server to TcpServer and simplify it 2019-10-30 00:34:30 -04:00