1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
Commit Graph

589 Commits

Author SHA1 Message Date
Carlos Esquerdo Bernat
0d8ebf5845
websocket: use log instead submodule logger (1/4) (#5921) 2020-07-22 17:31:22 +03:00
Delyan Angelov
0af415fa28 vlib: add unsafe{} wrappers to C. fn calls, to allow compiling with -prod again 2020-07-21 09:05:31 +03:00
Carlos Esquerdo Bernat
6dbc143d67
websocket: move ws example to examples folder (#5875) 2020-07-21 00:55:58 +02:00
Carlos Esquerdo Bernat
60997b3052
net.http: wrap unsafe{} around req.headers.free() (#5891) 2020-07-20 15:39:46 +03:00
Delyan Angelov
e3f7681e89 smtp_test: use assert false return, remove for loop 2020-07-13 18:52:46 +03:00
Delyan Angelov
97d01a5487 test: enable passing username/password through env vars to smtp_test.v 2020-07-13 18:22:36 +03:00
spaceface777
e9c144bf98
smtp: rewrite module api (#5819) 2020-07-13 16:41:23 +02:00
Nedim
8674991bac
smtp: add mail sent confirmation and tests for smtp lib (#5813) 2020-07-12 20:42:11 +03:00
Delyan Angelov
d28a1042a0 net.http, net.websocket: allow importing both in the same app 2020-07-12 15:21:40 +03:00
Nedim
25c397f921
net.smtp: remove credentials from the test (#5808) 2020-07-11 21:19:36 +02:00
Nedim
549c4f54cd
net: implementation of SMTP RFC 2821 (#5807) 2020-07-11 21:05:24 +02:00
Alexander Medvednikov
2e275731a3 websocket: fix compilation 2020-07-11 12:41:37 +02:00
Alexander Medvednikov
649821be4c all: use v_realloc 2020-07-11 12:37:54 +02:00
Alexander Medvednikov
4d7d1eb0c4 http: referer() 2020-07-07 14:37:43 +02:00
Delyan Angelov
1416c70e73 net.websocket: fix building client.v 2020-07-05 18:44:39 +03:00
yuyi
34a24eaa4e
checker: validate loop var names (#5677) 2020-07-05 15:27:37 +02:00
Ryan Willis
bb6ab185c3
ci: fix periodic integration tests (#5666) 2020-07-04 19:52:25 +02:00
Uwe Krüger
3b067f5f85
all: experimental locked concurrency support, part 1 (#5637) 2020-07-04 12:44:25 +02:00
div72
95696559b7
os: fix early termination when saving binary (#5646) 2020-07-04 01:48:01 +02:00
Nick Treleaven
0b49e4db1c
v/checker.v: disallow pointer arithmetic for InfixExpr outside unsafe {} (#5640) 2020-07-03 18:10:10 +02:00
Delyan Angelov
5813d2bf72 net.socket: add s.peer_ip() 2020-07-02 23:02:56 +03:00
Nick Treleaven
e7339fec15
all: disallow pointer arithmetic for AssignStmt, PostfixExpr outside unsafe{} (#5581) 2020-07-01 14:50:17 +02:00
Delyan Angelov
78e1127d99
cgen: treat the main module like any other v module 2020-07-01 00:53:53 +02:00
Louis Schmieder
f3010cbfb2
http: add post function with json as payload (#5580) 2020-06-30 14:36:11 +02:00
Emily Hudson
c84bafbdae
vlib,cgen: cleanup array inits using `.repeat() instead of new init syntax 2020-06-27 21:46:04 +02:00
ka-weihe
7f225f2eaa
map: rename size to len 2020-06-21 16:51:02 +02:00
Delyan Angelov
0d6233cd45 net: support for s.max_single_send_size in Socket.send/2 2020-06-21 17:40:39 +03:00
spaceface777
624005bbd0
tcc_win: fix tests 2020-06-19 12:54:56 +02:00
Ned Palacios
5ff7d07138
vdoc: fix sorting + other minor improvements 2020-06-19 10:36:45 +02:00
Alexander Medvednikov
931bba1d7d net: fix windows urlmon flag 2020-06-10 11:25:41 +02:00
Alexander Medvednikov
c261ac4f46 net: fix windows headers 2020-06-10 11:24:37 +02:00
Hungry Blue Dev
e649cf84e3
rand: reorganize: phase 2 2020-06-09 15:06:07 +02:00
Enzo Baldisserri
11b7b97311
parser: fail when assigning to _ with := 2020-06-08 00:47:04 +02:00
Louis Schmieder
2cad6db9f7
http: fix redirect for servers returning lowercase 'location:' header 2020-06-08 00:01:20 +03:00
Tomas Hellström
9c8769503f
time: add microsecond precision to Time struct 2020-06-07 16:19:09 +03:00
Alexander Medvednikov
13a7ce9e69 gg: GG => Context 2020-06-04 20:26:18 +02:00
yuyi
5ae8853648
all: change f mut Foo to mut f Foo 2020-06-04 10:35:40 +02:00
Uwe Krüger
076089d3c5
checker: apply stricter type checks to function args and return types 2020-06-01 21:15:59 +02:00
Naheel
4fcabb71c4
os: implement cp for nix 2020-06-01 21:11:40 +02:00
Delyan Angelov
4956ca62e3 websocket: move .nonce_size to pub mut: 2020-06-01 20:37:24 +03:00
Delyan Angelov
328a235f94 websocket: add Client.nonce_size field 2020-06-01 20:31:58 +03:00
Delyan Angelov
ae8f7cf569 tests: fix some tests, that failed due to the stricter immutable checks 2020-06-01 18:24:38 +03:00
Delyan Angelov
04ca7efc0c websocket: fix compilation of client.v 2020-05-28 01:38:54 +03:00
Delyan Angelov
a4af4f9fe7 http_test.v: comment yahoo test urls for now 2020-05-27 15:53:57 +03:00
Uwe Krüger
013fdb8a4b
checker: restrict numeric promotions to cases where no data is lost 2020-05-27 05:42:48 +02:00
Enzo Baldisserri
145b125155
websocket: make compile 2020-05-26 12:50:37 +02:00
Enzo Baldisserri
d22609051a
checker: CallExpr with handled optional returns plain type 2020-05-25 11:32:14 +02:00
Delyan Angelov
06540f0e91 net: fix warnings due to uppercase consts 2020-05-24 07:39:47 +03:00
yuyi
4608898bcd
checker: fix multiple assign immutable error 2020-05-23 17:30:28 +02:00
yuyi
dda875a9c8
all: unify const names to snake_case 2020-05-22 17:36:09 +02:00
Alexander Medvednikov
ca81442fac parser: fix a small bug with < 2020-05-20 21:47:03 +02:00
Delyan Angelov
e3a162db77 http: remove redundant consts in backend_nix.c.v 2020-05-20 21:40:29 +03:00
Alexander Medvednikov
80070516fd http: set buffer size to 1536 2020-05-20 19:23:51 +02:00
Alexander Medvednikov
5d08c9d5a8 http: use bufsize const 2020-05-20 19:22:02 +02:00
Delyan Angelov
6eee69f7bc http: cleanup ssl_do, enhance the detection of chunked encoding 2020-05-20 14:32:59 +03:00
Delyan Angelov
ac396ea02f http: cleanup backend_nix.c.v, fixes vpm too 2020-05-20 12:04:28 +03:00
Delyan Angelov
1c2376741b http: fix redirects handling 2020-05-20 09:58:57 +03:00
Alexander Medvednikov
0a6d709ce2 http: fix recent changes; picoev: make compile 2020-05-20 05:37:03 +02:00
Uwe Krüger
2635be511f
all: re-apply C++ support 2020-05-18 21:38:06 +02:00
Alexander Medvednikov
07a78b2843 Revert "all: C++ compiler support"
This reverts commit 9a237c3e82.
2020-05-18 17:05:48 +02:00
Uwe Krüger
9a237c3e82
all: C++ compiler support 2020-05-18 15:51:36 +02:00
Alexander Medvednikov
4f307c1a78 checker: requre & in struct init; http: chunked encoding 2020-05-18 05:11:00 +02:00
yuyi
7f4cf08516
parser: check (mut f Foo) syntax 2020-05-17 13:51:18 +02:00
Enzo Baldisserri
f44a40eee0
checker: check incorrect names 2020-05-16 16:12:23 +02:00
Delyan Angelov
034bf46e4d vlib: remove unused arrays module 2020-05-16 00:20:14 +03:00
Alexander Medvednikov
e5d4786371 builder: simplify C error message 2020-05-14 18:14:38 +02:00
Alexander Medvednikov
ce03761375 parser: fix mut args with the new syntax; checker: fmt 2020-05-11 14:16:20 +02:00
Alexander Medvednikov
a2d120b583 cgen: fix reassignment of optionals 2020-05-10 17:41:33 +02:00
Alexander Medvednikov
10da871743 checker: handle unknown fields in fail_if_immutable 2020-05-10 02:07:15 +02:00
Alexander Medvednikov
32a7bd3a48 parser/checker: do not allow using private types from other modules 2020-05-04 21:56:41 +02:00
Tim Basel
3e4cd12fd0
.gitignore: ignore all binary files by default 2020-04-29 16:49:13 +02:00
jm-duro
210b6e36b6
http: mutable request fields 2020-04-28 13:57:48 +02:00
yuyi
2574dce174
all: fix remaining []array warnings 2020-04-26 16:25:54 +02:00
yuyi
9f4d498ff1
all: updateimport () and []array 2020-04-26 13:49:31 +02:00
yuyi
541b058e90
all: use a !in b instead of !(a in b) 2020-04-26 06:39:23 +02:00
Delyan Angelov
cd27300d75 cookie: fix a new match error about redundant else 2020-04-25 23:02:04 +03:00
Delyan Angelov
19d7553d67 tests: fix vlib/net/http/cookie_test.v 2020-04-25 22:53:18 +03:00
Junya Okuno
5600fd8613
net.http: remove redundant httponly handling 2020-04-25 06:15:05 +02:00
Leah Lundqvist
f3e3d7e0c5
websocket: update to work with latest V 2020-04-24 07:32:51 +02:00
Delyan Angelov
adb8fb1dc6 comptime: fix custom -d flags and $if x? {}. Fixes ftp_test.v . 2020-04-23 17:52:44 +03:00
yuyi
4e1abc8503
all: remove commas between enum vals 2020-04-23 01:16:16 +02:00
Alexander Medvednikov
df37597f00 tests: disable cookie test for now 2020-04-14 03:43:59 +02:00
Chris Watson
c6c2fccb23
net.http: add cookie support 2020-04-14 03:34:05 +02:00
lutherwenxu
dc4db87be3
vlib: use new filename format 2020-04-11 19:51:32 +02:00
Alexey
d078e6bb08
net: check if socket descriptor is valid 2020-04-11 19:06:01 +02:00
Delyan Angelov
fdac3a1f2e ftp.v: fix compilation 2020-04-10 23:23:42 +03:00
Delyan Angelov
217e6f3b8e checker/parser: allow for fixed array with sizes defined with a const 2020-04-10 22:01:22 +03:00
Alexander Medvednikov
d7ae9d7279 cgen: optional fixes; make http compile 2020-04-09 14:03:47 +02:00
Alexander Medvednikov
3521b7ff89 websocket: fmt example + minor fixes 2020-04-08 21:21:58 +02:00
Abdullah Atta
6f8f8d7b1b
websocket: eventbus and other cleanup 2020-04-08 21:19:01 +02:00
Leah Lundqvist
b28ab2511c
websocket: move library files to root of module 2020-04-08 19:44:30 +02:00
Alexander Medvednikov
fa6aaad6df checker: handle x := x 2020-04-08 19:15:19 +02:00
Alexander Medvednikov
8426db7fe5 copy thecodrr/vws to vlib/net/websocket 2020-04-08 14:22:31 +02:00
Delyan Angelov
582ee9e643 urllib: put braces in << | expressions in urllib.v to make test pass 2020-04-07 22:58:29 +03:00
Alexander Medvednikov
d865fc26eb http: fix method_and_url_to_response definition 2020-04-06 17:42:47 +02:00
Delyan Angelov
ba088056ed
solaris: make 'v test-compiler' pass (stage 2) 2020-03-21 09:48:02 +01:00
spaceface777
ef8c1203b4
cleanup: replace C for loops with range 2020-02-24 17:55:16 +01:00
Delyan Angelov
0ad5d53423
net.http: more robust handling of relative /path URL redirects 2020-02-12 14:52:39 +01:00
joe-conigliaro
7f709c3285
update copyright years 2020-02-03 05:00:36 +01:00
div72
5c29e7b257
http: fixed a bug with ignored user-agent 2020-01-29 04:05:37 +01:00
Shun Sakai
c8c43a2475 update copyright year 2020-01-23 21:04:46 +01:00
sha0coder
990e44cd14 ftp: protocol compatibility 2020-01-19 13:53:13 +01:00
Delyan Angelov
cc606623bb enable $if !network { checks in net tests 2020-01-16 19:44:16 +01:00
Chris Watson
84a6c019e8 http: refactor and reduce duplication 2020-01-16 18:16:11 +01:00
Kai
9f31390ff1 http: PATCH, DELETE, and PUT methods 2020-01-14 23:19:50 +01:00
Delyan Angelov
aeda48d94e vpm: add support for other VCS for modules, like hg
Add ability to pass flags to vpm.

Implement -help , -verbose and -server-url ,
to enable easier diagnostics and testing with a local server.
2020-01-03 22:07:58 +01:00
Abdullah Atta
63b70ddb06 move http module to net.http 2019-12-30 05:42:23 +01:00
Delyan Angelov
68e1d8e8eb net.ftp: make ftp's tests just compile (not run) on CI 2019-12-28 13:55:53 +01:00
Alexey
e02d6a3b04 ftp: flatten tests 2019-12-28 09:41:54 +01:00
Alexander Medvednikov
ec6a8cc9fd move ftp to net/ftp 2019-12-28 09:16:27 +01:00
Alexander Medvednikov
848cd3cb3e run vfmt on http, net, sync, strconv 2019-12-22 01:57:50 +03:00
Alexander Medvednikov
dc83e30a44 access modifiers: update tests/examples 2019-12-13 20:09:11 +03:00
Alexander Medvednikov
b8f728590b string: last_index ?int 2019-12-12 21:54:48 +03:00
Delyan Angelov
13769f440f vweb: continue after bad http client connection; performance fixes
* Enable compiling vweb with -prod (by supressing 'declared and not used' warning about 'reset') .

* Fix http responses (now wrk is happy and shows no errors) by adding a Content-Length header.

* Fix -g compilation for urllib.v .

* vweb: println action= only in debug mode.

* vweb: max request headers counting fix.

* Make vweb.html get a 'ctx mut Context' param, just like the other methods.

* vweb: simplify add_header.

* Use a string builder for the most common html case so that the response http text can be send in one go.

* vweb: reduce _STR/string interpolation usage in the most common html response case.

* vweb: refactor common http response formatting into Context.send_response_to_client/2 method.
2019-12-11 17:32:54 +03:00
Alexander Medvednikov
ad6adf327e vlib: fix missing else{} in match statements 2019-12-07 17:23:37 +03:00
Alexander Medvednikov
329485d4b6 vweb: fix headers and cookies 2019-12-07 15:04:05 +03:00
Alexander Medvednikov
c8d111924d check unused and unmodified vars in all modules, not just main 2019-12-06 18:43:56 +03:00
Alexander Medvednikov
40df0644ca fix all Foo{!} 2019-12-04 13:08:28 +03:00
Alexander Medvednikov
2651b8957a parser: fix unreachable code error in if a := opt() 2019-11-30 15:17:27 +03:00
Alexander Medvednikov
81d4f66fbb string: make index() return ?int instead of int/-1 2019-11-30 13:21:21 +03:00
sh0f
dbaa37ea46 urllib: fix string length in escape() 2019-11-27 12:15:05 +03:00
Alexander Medvednikov
a3b14e00a2 vweb fixes 2019-11-26 16:08:16 +03:00
Alexander Medvednikov
9bfea5e60b pg: define all C functions 2019-11-25 06:55:29 +03:00
Alexander Medvednikov
feacc2441f socket: fix sizeof 2019-11-25 06:23:09 +03:00
Alexander Medvednikov
e9e931fe4a force C function definitions 2019-11-24 12:14:22 +03:00
Delyan Angelov
c73f34cc5f net: make net.socket.write, net.socket.read_line more robust 2019-11-19 00:13:14 +03:00
Alexander Medvednikov
96b530cf85 update [] 2019-11-14 09:53:05 +03:00
Delyan Angelov
32473eeafe net and http: more consistent error messages 2019-11-12 19:23:53 +03:00
Alexander Medvednikov
e266c8a750 urllib: test str() 2019-11-06 22:35:59 +03:00
Abdullah Atta
c4e9f09f0f urllib: crash when converting URL to str 2019-11-06 22:34:33 +03:00
Alexander Medvednikov
f6d06fcda2 update tests and examples after the mutability fix 2019-11-06 06:57:04 +03:00
aliczin
53981c8747 compiler: supress windows (MSVC) warnings 2019-11-05 14:09:33 +03:00
joe-conigliaro
df5faf35e5 compiler: optionals default value 2019-11-04 02:38:49 +03:00
joe-conigliaro
59378dce46 compiler/vlib: replace substr/left/right with [start..end] everywhere 2019-10-27 10:03:15 +03:00
Don Alfons Nisnoni
ed55826686 log/net: switch => match 2019-10-27 09:45:03 +03:00
Alexander Medvednikov
a83aa28a67 urllib: switch => match 2019-10-25 17:54:34 +03:00
Alexander Medvednikov
892d1c6aab vweb: first step to revive it 2019-10-24 22:46:58 +03:00
Alexander Medvednikov
3d6bdc2dc3 public enums + more public structs (libs/examples/tests) 2019-10-24 13:24:50 +03:00
joe-conigliaro
a06e2298f0 compiler: detect and error on public init function & remove empty init functions 2019-10-12 13:54:58 +03:00
joe-conigliaro
51388fea75 compiler: module init function & init consts for cached modules 2019-10-12 01:17:37 +03:00
vitalyster
a5ccc4673b http: handle and print socket errors 2019-10-10 20:24:36 +03:00
vitalyster
f86a52aae6 socket: reuse socket parameters in addrinfo hints 2019-10-10 20:09:43 +03:00
joe-conigliaro
f8fefd5a60 urllib: rem underscore methods from; add strings index_bytes 2019-10-10 20:04:11 +03:00
vitalyster
0796e1dd69 socket: no need to initialize WinSock on each request 2019-10-09 21:01:31 +03:00
vitalyster
9834ccfcd9 windows: Unicode and IPv6 http/sockets
cleanup schannel implementation (drop NT4.0 compatibility, use unicode strings, etc)
restore http tests
fix socket test: it did not throw before
2019-09-26 22:54:15 +03:00
joe-conigliaro
8974aa4513 compiler/vlib: change _ := to _ = and disable _ := 2019-09-25 15:10:45 +03:00
Alexander Medvednikov
d2d75f3824 parser: do not allow "int?", only "?int" 2019-09-23 23:17:06 +03:00
Delyan Angelov
0e39df24d4 net: make socket.recv return the allocated buffer and the message length 2019-09-23 19:48:18 +03:00
luoheng
f1d5f8e2bf parser: allow ! only with bools 2019-09-21 18:21:45 +03:00
vitalyster
a42b4e219c net.socket: windows fixes and test
* added missing ai_canonname in addrinfo structure
* ai_canonname, ai_addr and ai_addrlen must be zeroed before getaddrinfo call
* write() must not be used on windows sockets
* added (Socket).get_port() function which is useful when socket was initialized with 0 (random) port
* tests is fixed, test server started listening on random port to avoid conflicts
2019-09-20 17:04:39 +03:00
joe-conigliaro
f077fbd32d vlib: change [0;n] to [0].repeat(n) 2019-09-15 12:26:05 +03:00
Alexander Medvednikov
7fc678c961 fix urllib_test.v 2019-09-09 14:21:18 +03:00
Delyan Angelov
db110759ab vweb: fix warnings 2019-09-03 19:10:56 +03:00
joe-conigliaro
3db50f724b net.urllib: Update with latest changes from go lib 2019-08-27 22:44:41 +03:00
Alexander Medvednikov
7fd9827318 all: add missing includes 2019-08-24 02:48:47 +03:00
Alexander Medvednikov
f61b14584a remove "import const" everywhere 2019-08-23 00:09:03 +03:00
Delyan Angelov
ffb6c6f5b4 net: add udp socket support and a simple udp server example. 2019-08-22 04:01:04 +03:00
Delyan Angelov
51818346df http: support plain http protocol 2019-08-21 20:04:06 +03:00
Carlos Esquerdo Bernat
cf23c289ec tests: cleanup 2019-08-20 11:18:12 +03:00
unknown-v
49205dcce3 examples: fix maps warnings 2019-08-17 02:55:11 +03:00
kambrium
a5af903362 Fixed typo 2019-08-16 09:02:09 +03:00
joe-conigliaro
8a2714b35a fix typo 2019-08-12 11:03:49 +03:00
joe-conigliaro
0bcc53c366 vlib: fix mutable args 2019-08-07 09:53:33 +02:00
Alexander Medvednikov
34e0b164eb make function arguments immutable by default 2019-08-07 08:59:00 +02:00
joe-conigliaro
69932758db net.urllib: update enum / const style 2019-08-06 13:01:05 +02:00
Vitaly Takmazov
43b81688f6 socket: WSACleanup should not be called on socket close 2019-08-06 01:50:45 +02:00
Alexander Medvednikov
8d3617b3de fix fn_test.v and urllib.v 2019-08-05 03:31:22 +02:00
Nicolas Sauzede
f306fbb2f0 net connect: fix error/return type 2019-08-04 01:46:55 +02:00
joe-conigliaro
9e76d8a638 net.urllib: fix values (used for query string/form data) 2019-08-02 23:28:55 +02:00
joe-conigliaro
7bf1c7f005 net.urllib: change confusing name of internal method 2019-08-02 08:52:37 +02:00
joe-conigliaro
be0796ce14 urllib: fix error message 2019-08-02 06:00:34 +02:00
joe-conigliaro
8369525d8a net.urllib: fix unescape 2019-08-02 00:31:47 +02:00
joe-conigliaro
d3c89273e8 net.urllib module 2019-08-01 15:01:03 +02:00
Alexander Medvednikov
207bab5f79 generics, vweb, comptime codegen, etc 2019-07-29 18:24:48 +02:00
Justice Suh
d72c859bf9 net: socket error handling 2019-07-24 00:31:39 +02:00
Alexander Medvednikov
390394b56b string: make substr() copy the data, like in Java and C#; remove .cstr()
this makes managing memory used by strings much easier
V strings are now fully compatible with C strings
2019-07-22 17:03:45 +02:00
0x9ef
d6ddfa124d Fixed get_error_msg for *nix
* Fixed undefined: get_error_msg
2019-07-18 20:21:48 +02:00
unknown-v
9d4b4df54f net : fix error msg
from 
os.hostname() cannot get the host name
to
net.hostname() cannot get the host name
2019-07-17 18:42:10 +02:00
Alexander Medvednikov
251e32948e fix Windows build: move hostname to net/ 2019-07-17 13:50:58 +02:00
Alexander Medvednikov
449fd372f9 *_nix.v support 2019-07-15 19:23:09 +02:00
Justice Suh
5dfd5fa3e7 net: add windows socket support 2019-07-14 00:04:45 +02:00
archanpatkar
5e0ae9a429 net: added listen_backlog to enable custom backlog 2019-07-03 16:13:02 +02:00
S-YOU
53e439bc99 setsockopt arg optvalue supposed to be ptr 2019-07-02 21:49:05 +02:00
Justice Suh
859c8ffdb8 net: socket send and recv 2019-07-02 19:45:38 +02:00
Justice Suh
571410dd48 net: low level socket api 2019-07-01 17:31:38 +02:00
Alexander Medvednikov
fde0e39abf net: clean up 2019-06-30 21:00:22 +02:00
Alexander Medvednikov
6a1b16c72c net: listen and accept 2019-06-30 20:57:25 +02:00
Alexander Medvednikov
9062338cb4 fix compilation 2019-06-30 20:48:26 +02:00
Alexander Medvednikov
61b51f6149 os.File clean up + socket.v (dial()) 2019-06-30 20:28:50 +02:00