Delyan Angelov
177bb30013
net: change default of the socket used by net.listen_tcp, to dualstack, even if the OS has a different default. Allow changing the listen backlog too
...
With this change, example vweb programs, will continue to be available to both
ipv6 and ipv4 connections from the same machine, even after doing (on linux):
`echo 1 | sudo tee /proc/sys/net/ipv6/bindv6only`
Previously, after that, vweb programs responded only to ipv6 connections, but not to ipv4 ones,
i.e. opening http://127.0.0.1:8082/ stopped working, for `v run examples/vweb/vweb_example.v` .
Note: GO web servers have the same behaviour, which is convenient for development/testing,
since it makes the programs more consistent and robust in the face of OS settings changes.
2023-08-01 11:32:08 +03:00
Josh Montoya
51ad565ed6
vweb: implement worker pool ( #17298 )
2023-04-02 01:24:33 +02:00
Delyan Angelov
d2e5c721a0
net: allow more fine grained control over socket shutdowns
2023-01-25 12:34:39 +02:00
Delyan Angelov
d4320863fe
net: fix compilation with -d trace_tcp_data_write
and -d trace_tcp_data_read
; add .hex() dumping too for easier diagnosing of binary protocol level problems
2023-01-15 13:25:23 +02:00
Delyan Angelov
9f1239c56e
vweb,net: fix vweb crash when the connection was closed prematurely (tested with Chrome on windows, refreshing as fast as possible)
2022-12-17 19:08:59 +02:00
yuyi
017ace6ea7
vfmt: change all '$expr' to '${expr}' ( #16428 )
2022-11-15 16:53:13 +03:00
Alexander Medvednikov
c6158e4519
all: remove unnecessary IError() casts
2022-10-28 19:08:30 +03:00
Wertzui123
340611c298
net: add a net.tcp_socket_from_handle_raw
function ( #16167 )
2022-10-23 22:21:46 +03:00
yuyi
f6844e9766
all: change optional to result of io ( #16075 )
2022-10-16 09:28:57 +03:00
Emin Arıcan
7672725204
net: fix typo ( #15688 )
2022-09-07 16:35:28 +03:00
Vincenzo Palazzo
b01f71d9da
io: migrate the Reader
API to Result
instead of Option
( #15229 )
2022-08-08 02:33:25 +03:00
Emily Hudson
fd1b6efea6
net: add failed addresses + details on connect errors, make connect more robust in the default non blocking mode ( #15364 )
2022-08-07 10:40:05 +03:00
shove
b4ed5d5f20
net: add a net.dial_tcp_with_bind/2 function ( #15055 ) ( #15056 )
2022-07-15 12:38:17 +03:00
WoodyAtHome
34517c340d
net: support blocking sockets in TcpSocket.connect ( #14849 )
2022-06-27 11:01:55 +03:00
Daniel Däschle
d679146a80
fmt: remove space in front of ? and ! ( #14366 )
2022-05-13 06:56:21 +03:00
Alexander Medvednikov
fbb9e65c0f
all: ~500 more byte=>u8
2022-04-15 18:25:45 +03:00
Alexander Medvednikov
fb192d949b
all: replace []byte with []u8
2022-04-15 15:35:35 +03:00
Alexander Medvednikov
d4a0d6f73c
all: byte => u8
2022-04-15 14:58:56 +03:00
Delyan Angelov
9b43713ec5
net: simplify TcpListener.accept, use C.accept(l.sock.handle, 0, 0)
, since we do not care about the local address of the accepted connection
2022-04-12 11:47:41 +03:00
gcxfd
ee1de06678
net: extract a common Socket struct, reuse it by embedding in TcpSocket & UdpSocket ( #13559 )
2022-02-22 10:34:38 +02:00
Tim Basel
9d0a5942ac
builtin: change IError msg
and code
to methods + fix vlib, add a deprecation notice for the old usages ( #13041 )
2022-02-11 15:52:33 +02:00
Delyan Angelov
b778c1d097
net: make listen/bind errors more informative
2022-01-08 17:02:03 +02:00
Alexander Ivanov
0386f2bbea
checker: add an interface check for mutability, fixes #1081 , fixes #7038 ( #11963 )
2021-10-11 15:41:31 +03:00
Delyan Angelov
6b40ead54d
fix ./v -cc g++ run examples/concurrency/concurrency_http.v
2021-09-28 10:35:02 +03:00
Delyan Angelov
c954c2834a
net: add -d trace_tcp
support for more TcpConn methods; support again -d net_blocking_sockets
too
2021-08-27 13:10:34 +03:00
Delyan Angelov
b22c335496
net: add TcpConn.get_blocking/0, TcpConn.set_blocking/1 methods, change TcpConn.read_line to set the connection to blocking, if it was not already
2021-08-07 23:21:55 +03:00
shadow
66bc8bc0cb
vlib: remove many deprecated functions ( #10972 )
2021-07-28 09:22:19 +03:00
Daniel Däschle
ad3835b598
parser: deprecate short struct init ( #10842 )
2021-07-20 11:17:08 +03:00
Emily Hudson
535dcac8fa
net: ipv6 support, merge unix+ip;[pack:x] attribute ( #9904 )
2021-06-13 23:53:38 +03:00
Alexander Medvednikov
ed6ad728d9
vweb: fix serving static files
2021-05-16 04:28:14 +03:00
Delyan Angelov
a832bb609a
net: support -d net_blocking_sockets
(workaround a sporadic vex failure)
2021-04-23 17:22:43 +03:00
Delyan Angelov
6f50157abc
net: implement a customizable send chunk size limit for TcpConn.write_ptr
2021-04-23 17:22:43 +03:00
Delyan Angelov
e6c4c4de3d
net: format the output of -d trace_tcp output
better
2021-04-23 17:22:43 +03:00
Delyan Angelov
1b46f9aa02
net: fix unsafe warnings
2021-04-23 15:31:25 +03:00
Delyan Angelov
669a4ea1be
net: support -d trace_tcp_data_read
and -d trace_tcp_data_write
too
2021-04-23 15:12:49 +03:00
Delyan Angelov
cf497623dc
net: do $if trace_tcp ? {
in more functions to help debug web server issues
2021-04-23 14:37:12 +03:00
Delyan Angelov
3e297bced4
ci: remove some tests from skip_with_werror in v test-self
2021-04-14 12:47:24 +03:00
Alexander Medvednikov
57e6138a61
all: remove byteptr and charptr; replace them with &byte and &char
2021-04-04 17:43:32 +03:00
Alexander Medvednikov
bb79df932b
net/os: deprecate write_str() in favor of write_string()
2021-03-19 04:51:31 +03:00
spaceface
624c1f3bcf
cgen: make bool
s take up a single byte, not 4 ( #9352 )
2021-03-18 15:23:29 +01:00
Nick Treleaven
446631ceb5
checker: fixed array cannot implicitly convert to fooptr (again) ( #9302 )
2021-03-15 15:55:07 +02:00
joe-conigliaro
2d73411396
checker: define missing C fn args & check C & JS args ( #8770 )
2021-03-05 17:41:11 +03:00
zakuro
d0a64f2da7
net/openssl/websocket: implement io.Writer ( #8980 )
2021-02-27 10:29:18 +02:00
Delyan Angelov
b1209aac1b
ci: fix building of vlib/x/websocket/websocket_test.v
2021-02-21 17:03:25 +02:00
Nick Treleaven
ea803113c3
checker: check unsafe
V function calls ( #8752 )
2021-02-14 19:31:42 +01:00
Delyan Angelov
e5a84719ca
all: require calling optfn() ?
/ optfn() or {...}
for fn optfn() ? {}
2021-01-26 16:43:17 +02:00
Delyan Angelov
d92f5c55ba
net: use mut and refs as receivers consistently ( #8205 )
2021-01-20 11:11:01 +01:00
Daniel Däschle
3289dff7ff
checker: require explicit return none ( #8060 )
2021-01-12 11:43:55 +01:00
Swastik Baranwal
9291fb5e0c
checker: disallow comparison between enum and int ( #7886 )
2021-01-08 17:41:52 +01:00
Nick Treleaven
3203a124b2
checker: warn when casting between reference types outside of unsafe
( #7892 )
2021-01-05 17:02:04 +02:00