Commit Graph

8320 Commits (892971024e78cd0b3efd4e01ab0fb927a7d76525)

Author SHA1 Message Date
Delyan Angelov 37b4553f52
v.parser: fix running `math` programs, from V installed in folders containing `.v` 2021-08-31 09:16:12 +03:00
zakuro ebed01c946
v.tests: add a test_ fn, that returns an optional (#11340) 2021-08-31 08:50:26 +03:00
Alexander Medvednikov b72a2de931 0.2.4 2021-08-30 22:25:14 +03:00
playX a9b705bfd8
js: fix printing, make builtins for result and option types behave correctly (#11336) 2021-08-30 20:47:18 +03:00
Delyan Angelov f33f216698
v.markused: fix compilation with `-prod -skip-unused` of programs that embed files 2021-08-30 17:57:33 +03:00
penguindark 8dcb27a11d
sokol: expose the toggle_fullscreen and is_fullscreen functions (#11339) 2021-08-30 17:10:14 +03:00
Delyan Angelov 9496fcdfe1 v.builder: fix compilation with tcc on FreeBSD 13.0 2021-08-30 13:21:49 +00:00
yuyi f44eb88a8d
vfmt: fmt '!(a in/is b)' to 'a !in/is b' (#11335) 2021-08-30 09:45:36 +03:00
playX 61ac7b671d
js: add initial support for optional types, IfGuardExpr codegen for `if` (#11332) 2021-08-29 14:27:17 +03:00
yuyi 985fe85de2
checker: show concretes type name in error message (#11333) 2021-08-29 12:08:57 +03:00
Daniel Däschle ac442abc11
checker: allow noreturn in match expr (#11126) 2021-08-29 11:57:11 +03:00
yuyi 4ce9ad6a56
util/module: fix mod_path_to_full_name() (#11329) 2021-08-29 11:56:05 +03:00
yuyi 8be2be8311
all: change 'if !(a in b)' to 'if a !in b' (#11330) 2021-08-29 11:55:18 +03:00
playX 118c5fdcd8
js: fix -stats compilation of tests, proper alias codegen (#11327) 2021-08-28 16:57:33 +03:00
Delyan Angelov f41939f005
ci: fix deprecations.out (time is now > 2021/08/28 00:00:00) 2021-08-28 13:02:59 +03:00
Alexander Medvednikov cf4081e2dd all: more chdir/chmod fixes 2021-08-28 12:52:48 +03:00
yuyi e90a624738
checker: fix generic fn infer variadic parameter with arrays (#11324) 2021-08-28 10:32:51 +03:00
Alexander Medvednikov f731060caf all: update chmod/chdir usages 2021-08-28 10:23:01 +03:00
Alexander Medvednikov 29f550158e all: update chdir usages 2021-08-28 09:39:18 +03:00
Alexander Medvednikov 853d3cb83e os: make chmod() return error 2021-08-28 09:37:24 +03:00
Alexander Medvednikov 858ba25d55 os: make chdir() return error 2021-08-28 09:35:39 +03:00
Larpon e85311c2ba
gg: change draw_cubic_bezier* call signatures for speed and to match *_poly (#11323) 2021-08-27 16:52:05 +03:00
William Gooch 4d5521bbf7
scanner: clarify the float literal warning (#11313) 2021-08-27 16:49:29 +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
crthpl a85467eb0f
cgen: fix `expr in shared_array` (#11319) 2021-08-27 11:48:32 +03:00
Delyan Angelov 16455a7660 fmt: preserve local fn parameter, when a module const with the same name is declared 2021-08-27 09:22:53 +03:00
playX bdf11d969a
js: add basic support for running tests, fix string.replace_each (#11314) 2021-08-26 15:20:54 +03:00
Delyan Angelov db194abeac os: merge os.c.v and os_c.c.v 2021-08-26 10:01:55 +03:00
yuyi 187c1c160b
parser: minor cleanup in comp_call() (#11311) 2021-08-26 07:57:10 +03:00
yuyi b635ff80de
fmt: format '1.' to '1.0' (#11312) 2021-08-26 07:18:27 +03:00
Alexander Medvednikov 714fa3215c scanner: make the 1. float error a warning for now 2021-08-25 16:58:54 +03:00
playX 109d5d5847
js: `os` now compiles to the JS backend, more builtins & minor codegen fixes (#11302) 2021-08-25 14:40:53 +03:00
yuyi f257a23313
checker: check non-generic struct init (#11300) 2021-08-25 14:40:40 +03:00
Ned Palacios 50d1e9aa2b
mssql: fix c function definition parameters (#11307) 2021-08-25 14:39:56 +03:00
yuyi 4d078edb72
scanner: no longer allow `1.` float literals (#11301) 2021-08-25 14:39:37 +03:00
yuyi 96398efd2b
checker: check array insert/prepend arguments (#11295) 2021-08-24 20:28:05 +03:00
Fabricio Pashaj 0bf9197f41
net.http: add a close method to immediatly close the listener of a started http.Server, add more tests (#11248) 2021-08-24 19:21:24 +03:00
pancake 3c85a03b8a
v.gen.native: initial support for the asm statement in the native backend (#11292) 2021-08-24 15:30:41 +03:00
pancake 57b148032f
v.gen.native: initial support for cast statements (#11291) 2021-08-24 15:26:49 +03:00
Larpon 833bf2cf15
gg: add cubic Bézier curves + examples (#11286) 2021-08-24 06:35:27 +03:00
Lukas Neubert 3249f8f0e7
cgen: properly cast to sumtypes in array prepend and insert (#11289) 2021-08-24 06:25:09 +03:00
Alexander Medvednikov 4824b409b1 builder: simplify the C error message 2021-08-24 06:24:35 +03:00
Adam Oates 83e2a84c21
encoding: add base58 support (#11288) 2021-08-24 06:22:46 +03:00
playX d78e7e3b2b
js: codegen fixes, W.I.P `os` availability for JS backend (#11281) 2021-08-23 14:25:02 +03:00
Benjamin Stigsen 76205cff2b
gg: add scaling to draw_convex_poly (#11276) 2021-08-23 13:38:29 +03:00
Miccah 51d7aede68
net.http: render each header value on a newline (#11270) 2021-08-23 00:38:09 +03:00
Benjamin Stigsen 352df873d5
gg: add scaling to draw_empty_poly() (#11272) 2021-08-23 00:37:20 +03:00
Ulises Jeremias Cornejo Fandos 1cfc4198f5
vlib/math: Add a pure V backend for vlib/math (#11267) 2021-08-23 00:35:28 +03:00
playX dd486bb0fb
js: match support (#11269) 2021-08-22 19:36:49 +03:00
yuyi b80777df4b
table: fix alias of sumtype method_call (#11268) 2021-08-22 17:20:10 +03:00
Delyan Angelov ec196cfcd1
all: support overriding individual function from .v files in .c.v or .js.v files. 2021-08-22 15:51:26 +03:00
Simon ed06c47a51
net: remove sockets if they already exists (#11264) 2021-08-22 13:38:02 +03:00
yuyi 2e28c9a4d6
checker: remove a duplicate check (#11265) 2021-08-22 12:09:14 +03:00
penguindark fde934cd93
builtin: optimize hex() (#11261) 2021-08-22 11:10:24 +03:00
playX 2f6b2dd189
js: math.big support, f{32,64}_bits,from_bits support, typeof(expr).name support (#11260) 2021-08-21 17:18:57 +03:00
yuyi 0d81d0c0c6
table, checker: fix sumtype array appending aggregate type values (fix #11197) (#11258) 2021-08-21 17:18:01 +03:00
pancake 02d823fa6e
v.gen.native: support infinite loops `for {}` in amd64 and arm64 (#11254) 2021-08-20 14:23:15 +03:00
pancake 82b16453e4
v.gen.native: improve error messages for unsupported features (#11253) 2021-08-20 14:21:05 +03:00
Alexander Medvednikov c9d6242c6d json: top level array test 2021-08-20 11:41:09 +03:00
yuyi e87cf8bac6
checker: cleanup checker.v (#11251) 2021-08-20 10:25:16 +03:00
yuyi 6201e78201
checker: fix generic struct with non-generic interface in generic fn (#11252) 2021-08-20 09:28:26 +03:00
Hualin Song 4fb570522a
json: fix json.decode bug for u64 values greater than 2^31 (#11238) 2021-08-20 09:14:55 +03:00
playX 1570e613b5
math: inf,nan,fmod for the JS backend (#11246) 2021-08-20 01:14:49 +03:00
Benjamin Stigsen 70a658a265
gg: set_pixels() (#11236) 2021-08-20 01:14:25 +03:00
yuyi a440b43630
checker, cgen: fix generic struct with non_generic interface (#11240) 2021-08-20 01:13:48 +03:00
Miccah 2cb0db633d
vweb: use Response struct for 302 response (#11245) 2021-08-20 01:13:36 +03:00
spaceface 67e8031a08
cgen: fix interface parameters in fn type aliases (#11247) 2021-08-20 01:12:31 +03:00
Jordan Liese a9fb24cb5f
vweb: fix missing newline in redirect header string (#11242) 2021-08-19 14:58:57 +03:00
Miccah 6991a3c8d5
net.http: add graceful shutdown .stop() method to the http.Server struct (#11233) 2021-08-19 11:19:49 +03:00
Leo Developer 7bffabbce2
vdoc: add `-comments` and new comment merger (#11221) 2021-08-19 10:20:43 +03:00
Delyan Angelov fe08e1c504
strings: add Builder.write_rune/1 and Builder.write_runes/1 methods 2021-08-19 07:18:09 +03:00
Alexander Medvednikov 26b77515b9 builtin: optimize []rune.string() 2021-08-19 06:58:53 +03:00
yuyi 3d22dc1608
all: fix formating Foo<A,B> to Foo<A, B> (#11225) 2021-08-18 17:17:21 +03:00
div72 881510e7ce
cgen: fix enum print (#11218) 2021-08-18 17:11:12 +03:00
div72 2bf1015ae1
os: add File.read_into_ptr (#11219) 2021-08-18 17:08:41 +03:00
JalonSolov b3c641f7d5
time: use `&C.time_t` instead of `&time_t` in C fn declaration (#11232) 2021-08-18 17:05:43 +03:00
spaceface d2ce1f74d6
ast.table: fix aggregate field type equality check (#11210) 2021-08-18 14:09:54 +03:00
yuyi e07678d6f3
checker: check using redundant parentheses (#11228) 2021-08-18 13:49:50 +03:00
spaceface 09e854c064
cgen: small interface conversion fix (#11229) 2021-08-18 13:47:57 +03:00
Delyan Angelov 9ca99c6f93
v.builder: add `-Wl,--allow-multiple-definition` when targeting FreeBSD 2021-08-18 12:57:44 +03:00
playX 0121c8b4fd
v.gen.js: fix method calls and other codegen parts, rand module compiles (#11205) 2021-08-18 11:33:37 +03:00
yuyi c51f83efba
checker: fix match expr type mismatch (#11220) 2021-08-18 08:52:01 +03:00
JalonSolov 1dee4f25fd
vweb: add more common mime types (#11226) 2021-08-18 08:51:18 +03:00
spaceface 7d9969ac17
all: support runtime interface conversions (#11212) 2021-08-17 21:00:27 +03:00
spaceface 7c9a1defa4
fmt: preserve method receiver mutability in interface decls (#11222) 2021-08-17 19:39:53 +03:00
Delyan Angelov f96b81b53a
ci: fix failing vweb_test.v 2021-08-17 18:57:04 +03:00
yuyi e1c762a616
cgen: fix assert fn_call with parentheses (fix #11207) (#11214) 2021-08-17 18:21:15 +03:00
Alexander Medvednikov f8174c381c net.http: simplify fetch() 2021-08-17 09:17:03 +03:00
Miccah 19abe8c750
math.big: add from_bytes function (#11213) 2021-08-17 09:12:39 +03:00
pancake 90b25e7a4b
os: filesystem level locking api (#11191) 2021-08-17 08:21:33 +03:00
yuyi 8521e227b4
cgen: fix if expr of multi stmts (#11208) 2021-08-16 21:48:58 +03:00
Delyan Angelov 405ed584a1
v.vmod: return errors instead of panic-ing 2021-08-16 16:54:41 +03:00
Louis Schmieder 0d30667ab5
orm: fix orm unique lists (#11198) 2021-08-16 14:59:23 +03:00
Louis Schmieder 482eecbc13
cgen: fix comptime selector reserved field names (#11199) 2021-08-16 14:58:23 +03:00
Leo Developer b417d3c043
v.readline: fix key delete panic'king on linux (#11204) 2021-08-16 12:28:40 +03:00
Miccah d235de63e2
math: add egcd function implementing the extended Euclidean algorithm (#11203) 2021-08-16 11:49:50 +03:00
yuyi 90b052b1db
v.gen.c: fix error of if_expr in infix_expr (#11200) 2021-08-16 11:23:19 +03:00
Delyan Angelov 46ede3fb98
v check-md: reduce false positives for too long lines in various cases (real problems are easier to spot now) 2021-08-16 10:12:29 +03:00
Alexander Medvednikov fadfc3b457 gg: format a line 2021-08-16 06:36:23 +03:00
Alexander Medvednikov eb1ac5b30d time: use i64 in unix() 2021-08-16 06:28:54 +03:00