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

12276 Commits

Author SHA1 Message Date
Delyan Angelov
8c8d21d130
checker: add -skip-unused support for vweb.run_at too (#18884) 2023-07-17 15:51:50 +03:00
Turiiya
63867d4ce0
time: add missing custom_format token (#18880) 2023-07-17 10:40:27 +03:00
alexferl
c2dc1ca706
net.http: make listener public, and add addr in Server struct (#18871) 2023-07-16 15:42:30 +03:00
yuyi
b06811cb0f
checker: clean up ensure_type_exists() (#18860) 2023-07-14 20:44:01 +03:00
l-m
4413808941
picohttpparser: make u64toa public (#18861) 2023-07-14 17:21:40 +03:00
Delyan Angelov
9047f7c9a8
vweb: fix parsing of form fields, send with multipart/form-data (by JS fetch) 2023-07-14 16:20:02 +03:00
Alexander Medvednikov
f1bc5e6d46 http: Request.host 2023-07-14 14:26:11 +03:00
yuyi
8ecad5abf8
checker: clean up in cast_expr() (#18859) 2023-07-14 13:38:41 +03:00
Alexander Medvednikov
207203f599 pref: make -autofree work without -gc none 2023-07-14 12:41:17 +03:00
Alexander Medvednikov
877e6ddc9f checker: minor wording fix in an error 2023-07-14 12:40:23 +03:00
yuyi
7e067c5fb6
ast: minor cleanup in table.v (#18856) 2023-07-14 12:17:20 +03:00
Eliyaan (Nopana)
3081919a8f
native: move functions out of amd64.v (#18857) 2023-07-14 12:15:22 +03:00
Swastik Baranwal
a9a94cfd51
checker: add a separate error msg for fail_if_immutable for anon fns (#18854) 2023-07-13 16:55:06 +03:00
yuyi
aef4367a27
cgen: fix returning an option tuple - fn f() ?(int,int) { return g() } (#18851) 2023-07-13 12:02:26 +03:00
Felipe Pena
413ffbfc3b
v: allow alias as fixed array on return (#18817) 2023-07-13 11:58:49 +03:00
Felipe Pena
029e8a815b
checker: fix type checker on auto deref var (#18842) 2023-07-13 11:56:11 +03:00
yuyi
52a055b6bc
cgen: fix option map with fn type value (#18849) 2023-07-12 15:48:04 +03:00
l-m
c422919481
wasm: remove dependency on thirdparty/binaryen, webassembly backend rewrite (#18120) 2023-07-12 15:24:38 +03:00
Swastik Baranwal
1c7df29bed
checker: disallow voidptr cast to struct (#18845) 2023-07-12 11:07:34 +03:00
Casper Kuethe
a43064af07
picoev, picohttparser: reimplement in V (#18506) 2023-07-12 09:40:16 +03:00
yuyi
045adb6600
parser: change warn to error, for const names with upper letter (fix #18838) (#18840) 2023-07-11 17:48:53 +03:00
yuyi
6b792b1257
v: use autocasting in complex conditions (#18839) 2023-07-11 14:49:43 +03:00
Felipe Pena
6b29d628c3
cgen: fix generated code for returning generic result/option to comptime var (#18834) 2023-07-10 21:24:13 +03:00
yuyi
6a8a22891d
checker: fix autocast in complex if condtions 5 (#18833) 2023-07-10 21:22:13 +03:00
Delyan Angelov
acd581add5
strconv: mark strconv.v_sprintf and strconv.v_printf with [unsafe] (part 2, breaking change, needed an update to vsl) (#18836) 2023-07-10 21:20:47 +03:00
Delyan Angelov
6b00685629
strconv: remove deprecations for strconv.v_sprintf and strconv.v_printf (part 1) 2023-07-10 17:42:29 +03:00
Delyan Angelov
e7af25ec14
examples: add examples/gg/many_thousands_of_circles.v, thanks to @xjunko, document how to use ctx.end(how:.passthru). (#18832) 2023-07-10 15:33:14 +03:00
Felipe Pena
f8e89ae91c
all: remove any type future implementation reference (#18822) 2023-07-10 10:41:06 +03:00
yuyi
c9e8dd56c2
cgen: fix cross assign with aliased array (#18830) 2023-07-10 10:40:48 +03:00
yuyi
1728e4c73e
cgen: fix anon fn direct call with option (#18827) 2023-07-10 00:15:25 +03:00
Swastik Baranwal
0498f4c40f
checker: add an error for $tmpl function type mismatches (#18826) 2023-07-09 19:40:10 +03:00
Felipe Pena
59eb76c81d
v: allow none for not first values on map initialization (#18821) 2023-07-09 15:41:24 +03:00
Felipe Pena
8f3a1751e3
json: fix option state (#18802) 2023-07-09 08:23:24 +03:00
Alexander Medvednikov
5355c67ebe vweb: document live reload 2023-07-08 19:29:27 +03:00
Felipe Pena
4f518c2850
cgen: fix dump of map with option value fix (fix #18806) (#18813) 2023-07-08 07:07:24 +03:00
Delyan Angelov
54635185c4
cgen: ensure that << and >> has higher precedence in the generated C code, than arithmetic operations (diff between C and V precedences) (#18814) 2023-07-08 07:02:32 +03:00
yuyi
17b576227f
checker: change 'fail_if_immutable(expr_ ast.Expr)' to 'fail_if_immutable(mut expr ast.Expr)' (#18811) 2023-07-07 23:27:52 +03:00
kbkpbot
b3a6b73306
eventbus: add generic support for event name (#18805) 2023-07-07 22:33:57 +03:00
yuyi
97a726b188
cgen: fix nested or expr call (fix #18803) (#18807) 2023-07-07 22:06:10 +03:00
Felipe Pena
7fe794a974
json: fix option alias support (#18801) 2023-07-07 22:03:41 +03:00
encyclopaedia
e7e5a07aa2
arrays: add more util functions and tests for them - find_first, find_last, join_to_string (#18784) 2023-07-07 06:52:08 +03:00
okk
7d6e15fa66
net.ftp: fix dir() for file names, which contain spaces (fix #18800) (#18804) 2023-07-07 06:50:20 +03:00
Delyan Angelov
ded6c38061
vlib: add a new module builtin.wchar, to ease dealing with C APIs that accept wchar_t* (#18794) 2023-07-07 02:40:11 +03:00
Felipe Pena
de392003be
cgen: fix code generation for array.clear (#18792) 2023-07-07 00:28:06 +03:00
yuyi
11f06e41c0
ast: clean up in types.v (#18793) 2023-07-07 00:27:21 +03:00
yuyi
2d838d5178
v: use autocasting in complex conditions (#18797) 2023-07-06 19:18:57 +03:00
yuyi
b3f89e1417
ast: minor simplification of new_table() (#18795) 2023-07-06 13:51:46 +03:00
Felipe Pena
8f7f2c8cf7
checker: fix try_pop with fixed array (#18789) 2023-07-06 02:34:22 +03:00
Delyan Angelov
d851ecffb7
parser: fix anonymous fns parameter checks, behaving differently than named fns (fix #18779) (#18785) 2023-07-06 02:30:26 +03:00
shove
cd6330e218
parser: fix compiler error when match returns reference (#18728) (#18783) 2023-07-05 23:28:58 +03:00
Felipe Pena
072364fc59
checker: fix interface param resolution (#18780) 2023-07-05 23:26:44 +03:00
yuyi
4a196989a9
doc: cleanup with 'mut expr ast.Expr' (#18787) 2023-07-05 23:26:02 +03:00
Delyan Angelov
aa61fcb3dc
orm: fix inserting sequential values (id=0), in tables with an i64 primary field (#18791) 2023-07-05 23:25:22 +03:00
yuyi
7f8749afdd
checker: change 'expr(expr_ ast.Expr)' to 'expr(mut expr ast.Expr)' (#18781) 2023-07-05 17:02:22 +03:00
Eliyaan (Nopana)
b0323c79ad
native: move for_in_stmt to stmt.v (#18705) 2023-07-04 22:43:23 +03:00
Felipe Pena
578264c815
checker: fix comptime selector evaluate when checked against type of array (#18774) 2023-07-04 22:42:55 +03:00
yuyi
5fd0338399
checker: change smartcast(expr_ ast.Expr,..) to smartcast(mut expr ast.Expr,..) (#18777) 2023-07-04 16:29:11 +03:00
Felipe Pena
52ddefbdc5
checker: fix comptime evaluation is/!is operator with typenode (#18773) 2023-07-04 16:28:35 +03:00
Delyan Angelov
884fbb0a98
builtin: implement string_from_wide/1 and string_from_wide2/2 on *nix too (#18776) 2023-07-04 15:49:15 +03:00
Felipe Pena
5d269ba703
cli: fix custom help without execute handler (#18732) 2023-07-04 06:48:53 +03:00
yuyi
7279e49077
checker: clean up in assign_stmt() (#18759) 2023-07-04 06:48:01 +03:00
phoebe
2fb561ba7f
checker, cgen: allow comptime ident is array of types (#18765) 2023-07-04 06:45:30 +03:00
phoebe
1db67f7505
checker: allow no return in compile_error else block (#18758) 2023-07-04 06:44:24 +03:00
Delyan Angelov
9bf2449a7b
cgen: fix memleak for [][]T{len: x}, or []Struct{len: x} (#18763) 2023-07-04 06:32:19 +03:00
Felipe Pena
3f5995ace8
cgen: fix regression with unalised naming conflict with C interop (#18752) 2023-07-03 23:12:20 +03:00
yuyi
c1550b3efa
ast, checker: change stmt(node_ ast.Stmt) to stmt(mut node ast.Stmt) (#18756) 2023-07-03 23:10:00 +03:00
Swastik Baranwal
ab258aebfb
checker: disallow invalid prefix on left side of assign stmt (#18750) 2023-07-03 18:54:23 +03:00
yuyi
df3c85eb36
checker: use autocasting in complex if conditions (#18753) 2023-07-03 11:03:05 +03:00
Mark aka walkingdevel
c48ae86132
cgen: fix autofree inserting string declarations for multiple functions calls (#18723) 2023-07-03 08:01:55 +03:00
phoebe
e01d973c27
checker: fix comptime "ident is type" (#18747) 2023-07-03 08:01:34 +03:00
yuyi
ad1d5e7adb
cgen: remove 'mut mut_table := unsafe { &ast.Table(g.table) }' (#18742) 2023-07-02 23:54:44 +03:00
yuyi
fd6983fcb4
checker: fix autocast in complex if condtions 4 (#18744) 2023-07-02 23:54:17 +03:00
Ikko Eltociear Ashimine
c75382ad23
term: fix typo in term_windows.c.v (#18745) 2023-07-02 23:53:56 +03:00
Herman
af38f8b3ba
channels: refactor the channel_select function (#18711) 2023-07-02 15:45:30 +03:00
Felipe Pena
329e063752
checker: fix wrong interface parameter resolution for anonymous fn (#18724) 2023-07-02 14:18:53 +03:00
Spydr
f3942417c4
native, builder: enable processing of .v files in the builtin module (for now most functions there are blacklisted) (#18735) 2023-07-02 14:16:15 +03:00
Swastik Baranwal
0ce3e46823
checker: disallow assigning nil to struct fields (#18725) 2023-07-02 14:04:28 +03:00
yuyi
44a6741bc3
ast, checker: change check(ast.file &ast.File) to check(mut ast.file ast.File) (#18729) 2023-07-02 09:41:04 +03:00
Turiiya
a27f2ddcc3
term.ui, vweb, v: update deprecated functions (#18726) 2023-07-02 09:38:33 +03:00
yuyi
5d4c2cd832
v: use autocasting in complex conditions (#18731) 2023-07-02 09:23:15 +03:00
Felipe Pena
29c8aaeb89
cgen: fix selector code to use interface method table on closure when needed (#18736) 2023-07-02 06:54:52 +03:00
Alexander Medvednikov
e407579e99 V 0.4 2023-07-01 13:50:33 +03:00
yuyi
049fa3c70f
cgen: minor cleanup in ref_or_deref_arg() (#18713) 2023-07-01 12:07:53 +03:00
yuyi
36577eed09
checker: fix autocast in complex if conditions 3 (#18715) 2023-07-01 12:07:17 +03:00
Isaiah
20c6d87fd4
fmt: fix formatting of imported static methods (#18720) 2023-07-01 12:04:52 +03:00
Spydr
ee429bb51d
native: increase support for ast.Alias and ast.TypeOf (#18722) 2023-07-01 11:39:39 +03:00
Alexander Medvednikov
015ccc2a7f V 0.3.5 2023-06-29 22:16:34 +03:00
Subhomoy Haldar
7ab11097be
rand: fix edge case, when bit length is 31 and 63, add tests for rand.intn(2147483647)! etc (#18714) 2023-06-29 22:11:27 +03:00
Alexander Medvednikov
cf323cd0ef Revert "checker: fix autocast in complex if conditions 3 (#18710)"
This reverts commit e74723c1e7.
2023-06-29 21:37:11 +03:00
Turiiya
357a4a00bf
checker: fix generic infix expr type mismatch error (#18706) 2023-06-29 21:32:21 +03:00
yuyi
e74723c1e7
checker: fix autocast in complex if conditions 3 (#18710) 2023-06-29 21:31:40 +03:00
Spydr
c4ba47a131
native: inital support for aliased types (#18703) 2023-06-29 21:30:48 +03:00
yuyi
f122703a43
v: use autocasting in if conditions inside the compiler (#18708) 2023-06-29 19:37:36 +03:00
Alexander Medvednikov
85160923b6 changelog: 0.3.5 (p. 1) 2023-06-29 19:28:38 +03:00
yuyi
60f9f53e36
checker: fix autocast in complex if condtions 2 (#18702) 2023-06-29 07:01:21 +03:00
Mark aka walkingdevel
7ee25843c2
db.mysql: fix the support for TIMESTAMP columns (#18704) 2023-06-29 06:49:58 +03:00
Daniel Daudysh
f0fb86f76e
checker,orm: skip compile-time error msg for fields tagged with [skip] and [sql: '-'] (#18700) 2023-06-29 06:43:24 +03:00
Swastik Baranwal
499d0526fc
checker,orm: add compile error for unsupported field data types like field []int etc (#18537) 2023-06-28 13:40:36 +03:00
yuyi
2b2aca6eb7
checker: fix autocast in complex if condtions (#18699) 2023-06-28 13:37:20 +03:00
phoebe
735654296c
math.big: refactor big_test.v for scalability (#18696) 2023-06-28 13:35:13 +03:00
Felipe Pena
89c56fb5ee
parser, checker: fix static method naming and generic call (#18694) 2023-06-28 07:07:07 +03:00
Felipe Pena
83ee2827d4
cgen: fix alias to struct ptr on structinit (#18571) 2023-06-28 07:02:32 +03:00
Turiiya
b2ca3ac089
net.html: fix semantic inconsistencies of tag retrieving functions (#18558) 2023-06-27 20:10:31 +03:00
phoebe
1bae9e4538
math.big: minor gcd improvements/fixups and internal rsh_to_set_bit (#18569) 2023-06-27 20:09:22 +03:00
yuyi
8508c552d2
checker: implement autocast in if conditions (#18573) 2023-06-27 20:08:50 +03:00
Swastik Baranwal
e48b55fc80
checker: disallow Result type aliases (#18693) 2023-06-27 20:08:37 +03:00
Hitalo Souza
aeebb4f118
json2: small refactor (#16913) 2023-06-27 20:07:44 +03:00
Felipe Pena
d523bb0306
checker: fix missing check for taking address of literal value member (#18570) 2023-06-27 10:54:03 +03:00
yuyi
3558e05bfb
tests: fix reflection_sym_test.v (#18574) 2023-06-27 10:53:35 +03:00
Alexander Medvednikov
02c382569c gen.golang: fix anon fn 2023-06-27 02:17:09 +03:00
Alexander Medvednikov
21ccb9b48e doc: clarify new static type methods a bit 2023-06-27 01:38:31 +03:00
Alexander Medvednikov
d52bac8ee9 doc: document new static type methods 2023-06-27 01:31:56 +03:00
Casper Kuethe
21d9730cde
context, vweb: add ability to set and get values on vweb.Context (#18564) 2023-06-27 01:25:45 +03:00
Eliyaan (Nopana)
7a9c885b31
native: replace abs() with mathutils.abs() (#18568) 2023-06-27 01:25:12 +03:00
yuyi
a67342d05b
checker: minor cleanup in infix_expr() (#18567) 2023-06-27 01:24:46 +03:00
Alexander Medvednikov
a9f8b5dadc all: static type methods 2023-06-27 01:23:30 +03:00
Delyan Angelov
ec35d76574
cgen: cleanup return comments in generated code after dbd2517 (-32KB for v.c) 2023-06-25 09:51:32 +03:00
Felipe Pena
1ee83bf639
checker: disallow using Result !Type as a map[Key]!Type (#18543) 2023-06-25 09:51:10 +03:00
Spydr
31f68eea94
native: split codegen into multiple files and refactor assign statement generation (#18546) 2023-06-25 09:47:10 +03:00
Felipe Pena
e9960339f9
cgen: fix generic resolver on non generic function (#18381) 2023-06-25 09:07:14 +03:00
yuyi
84a5fd0051
cgen: minor cleanup for ast.clear_flags() (#18549) 2023-06-25 09:01:36 +03:00
Felipe Pena
34ac3269bc
cgen: fix initialising a map, using option type as value (#18540) 2023-06-25 01:55:42 +03:00
Felipe Pena
752e4c2e47
cgen, checker: allow a << none, where a is []?&int (#18539) 2023-06-24 20:54:49 +03:00
yuyi
11fa28edff
flag: fix finalize with multiple shortargs (#18544) 2023-06-24 20:35:44 +03:00
yuyi
3e3b289583
checker: check shared parameter assigning (fix #18525) (#18534) 2023-06-24 14:18:11 +03:00
kbkpbot
5f0ad64155
runtime: add new functions total_memory/0 and free_memory/0 (#18499) 2023-06-24 14:15:15 +03:00
Felipe Pena
2abd2e2c2a
cgen, checker: fix indexexpr with sumtype of array types (#18515) 2023-06-24 09:09:49 +03:00
Delyan Angelov
4c9c515f8b
parser: remove hardcoded check for function calls for C.stat, C.sigaction, etc (#18535) 2023-06-24 08:03:12 +03:00
Delyan Angelov
2c7643661e
time: small cleanup of parse_iso8601 comments, make the C.strftime declaratione forwards compatible 2023-06-24 08:01:57 +03:00
yuyi
f3e1859ee8
parser: fix multiple embedded external module interface (#18531) 2023-06-23 21:23:24 +03:00
Felipe Pena
9d77fd90bf
checker: fix missing check for diff type on map value declaration (#18522) 2023-06-22 22:48:15 +03:00
yuyi
68ba39084d
checker: check struct field init with result value (fix #18511) (#18514) 2023-06-22 22:40:11 +03:00
Swastik Baranwal
0b2e947e0c
parser: disallow multi else branches in match (#18526) 2023-06-22 22:39:35 +03:00
Delyan Angelov
0e4eea80ca
cgen: fix code generation for generic unions (#18513) 2023-06-22 22:39:05 +03:00
Casper Kuethe
a12e82aa15
stbi: allow customisation of number of channels in stbi.load (#18491) 2023-06-22 16:47:52 +03:00
yuyi
22bd1b9d55
ast: clean up ast.StructInit (#18518) 2023-06-22 16:41:08 +03:00
Turiiya
af4e113f6c
vweb: use <head> instead of <header> in the html templates (#18516) 2023-06-22 11:11:02 +03:00
Joe Koop
8b25c4c9a3
net.http: copy IANA's list of methods to the http.Method enum (#18508) 2023-06-22 09:31:34 +03:00
yuyi
76ae9dba5c
checker: check struct init with pointer field (fix #18485) (#18501) 2023-06-21 12:36:28 +03:00
squidink7
5006ffb304
time, x.json2: improve iso8601 time decoding (#18496) 2023-06-21 12:34:50 +03:00
yuyi
d7a50b4a22
builtin: minor cleanup in sorted_map.v (#18502) 2023-06-21 12:34:05 +03:00
Turiiya
867f4376d8
checker: abstract repetitive error handling (#18507) 2023-06-21 12:13:18 +03:00
yuyi
b61fdfa094
checker, cgen: fix generic method variable (#18509) 2023-06-21 12:09:53 +03:00
phoebe
4485f1ca1e
math.big: fix documentation for mod_inverse (#18494) 2023-06-20 14:31:04 +03:00
Felipe Pena
c657384f72
cgen: fix alias to option handling (#18490) 2023-06-20 11:55:25 +03:00
Turiiya
a7f00e7594
checker: add hint to sumtype cannot hold reference types error (#18486) 2023-06-20 11:54:57 +03:00
Felipe Pena
0232f074a8
cgen: fix alias eq method + map init with option (#18483) 2023-06-20 11:52:59 +03:00
l-m
15cb343065
picoev: support for freebsd (#18492) 2023-06-20 09:04:07 +03:00
Turiiya
958e456790
parser: fix match for array of reference sumtype (#18487) 2023-06-19 18:40:17 +03:00
yuyi
7c1ace02f3
checker: fix a bug checking generic closures (#18489) 2023-06-19 18:22:25 +03:00