penguindark
3b166d8327
regex: added less restrictive use of '-' in CC ( #9484 )
2021-03-27 18:15:06 +02:00
Ekopalypse
1b7fd2cf00
time: fix time offset ( #9449 )
2021-03-27 17:34:34 +02:00
Lukas Neubert
d9240bd983
fmt: remove cur_short_mod ( #9486 )
2021-03-27 17:29:49 +02:00
Lukas Neubert
cd74273869
fmt: fix import aliases in type declarations ( #9483 )
2021-03-27 11:33:41 +01:00
Alexander Medvednikov
cbf4715804
gg: ui mode fixes
2021-03-27 13:03:19 +03:00
Swastik Baranwal
0e254e0329
vdoc: support -os and show docs according to the platform ( #9474 )
2021-03-27 09:50:06 +01:00
zakuro
6f5259571d
cgen: use overloaded eq op in auto eq method ( #9475 )
2021-03-26 19:46:54 +02:00
yuyi
36cc4880a6
parser: fix generic fn with upper name type ( #9460 ) ( #9478 )
2021-03-26 16:50:35 +02:00
Uwe Krüger
3220ab7053
Boehm-GC: fix global `const` handling ( #9477 )
...
* define global `__v_inside_init`
* unset `__v_inside_init` after `_vinit()`
* define `C.GC_MALLOC_UNCOLLECTABLE()`
* allocate uncollectable memory during `_vinit()`
* ci: run test cases with V copiler that uses GC-Boehm itself
* wrap `__v_inside_init` access into `#ifdef _VGCBOEHM`
2021-03-26 16:44:45 +02:00
Delyan Angelov
a38fc89150
ci: fix the content of function_arg_mutable_err.out
2021-03-26 15:06:29 +02:00
Delyan Angelov
7e6c511e06
ci: fix the content of mut_int.out
2021-03-26 15:02:30 +02:00
Delyan Angelov
87494fad1d
parser: allow passing `mut a AliasOfPointerType`
2021-03-26 13:38:16 +02:00
Alexander Medvednikov
1e9d527d3c
checker: fix the deref mut check
2021-03-26 12:21:22 +03:00
Alexander Medvednikov
bb5958991c
checker: warn about automatic (de)referencing; freetype: compilation flag fixes
2021-03-26 11:42:51 +03:00
Bastian Buck
69dff4b384
os: make os module handle large files ( #9439 )
2021-03-26 07:51:55 +01:00
zakuro
91ea76797a
cgen: fix a c error, when using dump(ptr) ( #9468 )
2021-03-26 08:35:12 +02:00
yuyi
478bb9ce8e
parser, checker: fix generic fn that returns a generic struct ( #9469 )
2021-03-26 08:32:11 +02:00
yuyi
d8108a58d8
cgen: minor cleanup in for_in_stmt() ( #9471 )
2021-03-26 08:21:01 +02:00
Delyan Angelov
f29ca6b8df
cgen: show the original malloc call on a detected leak
2021-03-25 20:45:39 +02:00
pancake
1bf7d968f9
x.json2: add u64 ( #9457 )
2021-03-25 16:53:39 +01:00
Uwe Krüger
257eadd2e1
gc: add `-gc boehm_leak` for leak detection ( #9464 )
2021-03-25 16:52:33 +01:00
Delyan Angelov
03d56865e3
builtin: do not call C.GC_FREE with -gc boehm
2021-03-25 09:15:01 +02:00
Delyan Angelov
b0878d3a92
builtin,v.pkgconfig: use brew's libgc on macos
2021-03-25 07:28:30 +02:00
Alexander Medvednikov
1590783f02
Revert "time: use .c.v for files that use C. functions ( #9447 )"
...
This reverts commit 5d8b9b0151
.
2021-03-25 07:35:34 +03:00
zakuro
837cada30c
cgen: minor cleanup infix_expr ( #9445 )
2021-03-24 23:21:54 +02:00
zakuro
6bc9ef7373
builtin: vfmt every .v file, except vlib/builtin/int_test.v ( #9448 )
2021-03-24 20:39:59 +02:00
zakuro
5d8b9b0151
time: use .c.v for files that use C. functions ( #9447 )
2021-03-24 20:15:17 +02:00
zakuro
e76c8d5dc0
fmt: use type_to_str_using_alias instead of type_to_str in struct.v ( #9431 )
...
* fmt: use type_to_str_using_alias instead of type_to_str in struct.v
* update test
2021-03-24 20:13:11 +02:00
Uwe Krüger
522d70b48d
builtin,cgen: fix -gc boehm issues with maps; add a CI job for it to prevent regressions ( #9453 )
2021-03-24 19:49:16 +02:00
ka-weihe
b996799ccd
wyhash: update to final_version_3 (part 2) ( #9452 )
2021-03-24 18:06:35 +02:00
ka-weihe
8a97fb890f
wyhash: update to final_version_3 (part 1) ( #9451 )
2021-03-24 17:57:38 +02:00
Delyan Angelov
f8f74d8587
builtin: add panic_optional_not_set and use it in cgen for fncall()? in main
2021-03-24 14:13:58 +02:00
Delyan Angelov
9b78d7d21d
tools: check formatting of more modules with `v test-cleancode`, colorize `v vet` output
2021-03-24 12:39:39 +02:00
Delyan Angelov
9e48826bcb
dl: add dl.open_opt/2, dl.sym_opt/2 and dl.dlerror/0 utility functions
2021-03-24 11:47:04 +02:00
ka-weihe
f885c7cea9
tests: fix three tests with address errors ( #9441 )
2021-03-24 00:01:29 +02:00
spaceface
392666e475
cgen: fix treating errors as values inside if expressions ( #9440 )
2021-03-23 22:45:08 +02:00
Delyan Angelov
7afa4c7e2c
builtin: fix `["abc", "xyz"].str()`
2021-03-23 22:11:32 +02:00
Delyan Angelov
b7c01db1f9
builtin: add .vstring_literal and .vstring_literal_with_len for converting read only strings like os.args
2021-03-23 22:10:28 +02:00
Delyan Angelov
026f8424c2
builtin: fix a leak in string.index_kmp
2021-03-23 21:48:08 +02:00
Delyan Angelov
b335d47b72
flag: fix Flag.free(), workaround -autofree limitations
2021-03-23 21:28:44 +02:00
Delyan Angelov
a593ff930f
flag: add a .free() method
2021-03-23 20:36:46 +02:00
Delyan Angelov
7f91b75cbc
builtin: fix leaks in `os.execute()` and `[]string{} == []string{}`
2021-03-23 20:36:19 +02:00
Delyan Angelov
d098a3caca
builtin: make string.add() public temporarily till -autofree improves
2021-03-23 20:20:53 +02:00
Delyan Angelov
419ee8ae2a
builtin: fix a bug in `[]string.join()`
2021-03-23 20:14:46 +02:00
Delyan Angelov
8abfe2f5a2
cgen: -autofree fixes for []string{} having literals, comming from defailt string stuct field values
2021-03-23 18:54:37 +02:00
Delyan Angelov
7101d53d74
ci: fix `v self`, `v up` and other tools
2021-03-23 15:30:41 +02:00
Alexander Medvednikov
11e1f42193
builder: save the binary next to the source code again
2021-03-23 14:50:50 +03:00
Alexander Medvednikov
6463dfca29
Revert "Revert "builder: create the binary in the current directory if -o is not provided""
...
This reverts commit f2b73fe3ca
.
2021-03-23 14:49:09 +03:00
Delyan Angelov
ae6420afc7
tools: fix `substring in s` usages, preventing `v -W build-tools`
2021-03-23 13:36:50 +02:00
Delyan Angelov
f2b73fe3ca
Revert "builder: create the binary in the current directory if -o is not provided"
...
This reverts commit 9ae64e7fce
.
2021-03-23 13:27:26 +02:00
Alexander Medvednikov
9ae64e7fce
builder: create the binary in the current directory if -o is not provided
2021-03-23 12:31:02 +03:00
Alexander Medvednikov
0c055a1ce9
all: s.contains(s2) instead of `in`
2021-03-23 11:38:56 +03:00
Alexander Medvednikov
b5c286256c
tests: fix a compilation error
2021-03-23 11:16:13 +03:00
Ned Palacios
1d42b4cf66
vdoc, v.doc: remove DocPos and use token.Position ( #9429 )
2021-03-23 09:07:09 +01:00
Alexander Medvednikov
e86c6e024c
autofree: fix frees before returns
2021-03-23 11:04:59 +03:00
Ned Palacios
b9cbb4f177
scanner: fix eof token position ( #9432 )
2021-03-23 08:51:09 +01:00
Ned Palacios
aa4e22c287
scanner, token: add column information to tokens ( #9407 )
2021-03-23 06:23:46 +01:00
ka-weihe
3753a58ce0
parser: fix if-guard redefinition ( #9425 )
2021-03-23 04:38:36 +01:00
Lukas Neubert
1b572f75e8
fmt: minor array wrap improvement ( #9420 )
2021-03-22 23:06:12 +01:00
Delyan Angelov
a00c80b98f
v: support compiler notices. Use them for `[deprecated_after: '2021-05-01']` tags
...
Compiler notices are like warnings, with these differences:
a) notices use a different color.
b) notices use a different label.
c) notices do not prevent compilation with -prod.
(warnings are converted to errors with -prod)
2021-03-22 19:59:00 +02:00
Delyan Angelov
c76c69ec35
all: simplify `return if ...` constructs to make more code compatible with -autofree
2021-03-22 16:45:29 +02:00
Alexander Medvednikov
a53aaaf9e7
os: fix a leak in read_lines()
2021-03-22 12:20:55 +03:00
yuyi
320cd00203
string: fix replace_each() ( #9415 )
2021-03-22 09:46:45 +01:00
Delyan Angelov
400b4027c9
strings: comment deprecation of Builder.write_bytes temporarily
2021-03-22 09:01:22 +02:00
Delyan Angelov
1eb3ed9818
flag: return error on .finalize() on CLI arguments with unknown short options too
2021-03-22 08:21:13 +02:00
zakuro
0258482caf
cgen: auto eq method for sumtype ( #9408 )
2021-03-22 06:39:07 +01:00
yuyi
cf6faaf215
parser: fix anon_fn with array arguments ( #9414 )
2021-03-22 03:22:29 +01:00
Subhomoy Haldar
c5bc349edb
rand: update documentation ( #9406 )
2021-03-21 19:36:17 +02:00
zakuro
dfd58293ef
parser: fix parse error when using `f<Foo<int> >` ( #9401 )
2021-03-21 13:09:43 +02:00
Subhomoy Haldar
0e80e57aa5
rand.dist: add exponential distribution function and unit tests ( #9402 )
2021-03-21 13:04:43 +02:00
Alexander Medvednikov
4d77f3810f
gc: enable on macos and add leak detection fns
2021-03-21 05:31:10 +03:00
spaceface
5873149c77
builtin: allow libgc to be used on windows as well ( #9393 )
2021-03-21 01:01:21 +01:00
yuyi
246c09db96
checker: fix generics in big_struct ( fix #9373 ) ( #9383 )
2021-03-20 17:29:13 +01:00
zakuro
f9bbc119aa
checker: make optional arguments in func call an error ( #9362 )
2021-03-20 17:27:16 +01:00
zakuro
c8416f9a54
all: deprecate write_str and replace it with write_string ( #9369 )
2021-03-20 17:25:51 +01:00
Larpon
b7a0c44f39
builder: allow running symlinked .vsh files ( #9385 )
2021-03-20 17:25:09 +01:00
Delyan Angelov
517c1841c1
time: fix .sleep() with `-gc boehm`
2021-03-20 16:24:46 +02:00
Delyan Angelov
8810af76df
all: support `-gc boehm` on systems with libgc-dev installed ( #9382 )
2021-03-20 14:16:36 +01:00
Delyan Angelov
a6ddd24f5c
v.embed_file: add .to_string() and .to_bytes() utility methods
2021-03-20 09:30:38 +02:00
zakuro
e3c0f305b2
os: deprecate `os.File.write_bytes` and add `os.File.write_ptr` ( #9370 )
2021-03-20 09:02:28 +02:00
yuyi
ead0dff55a
cgen: fix return if_guard expr ( #9375 )
2021-03-20 03:53:47 +01:00
spaceface
3f9e921c95
builtin: add a proper str() method to IError ( #9379 )
2021-03-20 01:55:16 +02:00
penguindark
59f95170b3
regex: bug fix in replace using function, added tests ( #9381 )
2021-03-20 01:54:12 +02:00
Delyan Angelov
b0e225ac2d
dl: fix `v -cflags "-Werror" use_test.v`
2021-03-19 23:27:14 +02:00
Delyan Angelov
a386be6505
v.table: correct `table.types` to `table.type_symbols`
2021-03-19 22:51:52 +02:00
Delyan Angelov
4a12546971
cgen,fmt: improve sizeof(), fix `type PPType = &&Type`
2021-03-19 22:49:46 +02:00
Delyan Angelov
c5884a5f4d
v.ast: improve Expr.str() for `sizeof(Type)`
2021-03-19 20:56:49 +02:00
zakuro
95a748e8b0
checker: cleanup call_method ( #9365 )
2021-03-19 14:19:38 +02:00
Delyan Angelov
4f6306f6d4
examples: fix `v -cflags "-Werror" test examples/`
2021-03-19 13:13:56 +02:00
Lukas Neubert
82c4daa4b7
fmt: fail keep test when bin2v_keep preparation step fails ( #9361 )
2021-03-19 13:13:03 +02:00
Emeric MARTINEAU
125236694f
cli: improve multiple value management ( #8310 )
2021-03-19 13:09:56 +02:00
zakuro
29884fa2a9
os: deprecate read_at and add read_from to implement RandomReader ( #9371 )
2021-03-19 12:35:08 +02:00
Lukas Neubert
f8fcf3ff66
fmt: reorder and sort methods into section ( #9363 )
2021-03-19 11:26:34 +02:00
Delyan Angelov
04095f4088
ci: fix failing `v -W build-tools` and `v -W build-examples`; run vfmt.
2021-03-19 09:49:26 +02:00
Delyan Angelov
ea3d1405ee
ci: fix failing -Werror job with tcc
2021-03-19 09:34:41 +02:00
JalonSolov
9ea88c090b
os: fix warning write_str -> write_string ( #9368 )
2021-03-19 03:36:27 +01:00
Alexander Medvednikov
bb79df932b
net/os: deprecate write_str() in favor of write_string()
2021-03-19 04:51:31 +03:00
Delyan Angelov
8fa7e67000
builtin: use `return s.clone()` instead of `return s` consistently, to make manual free easier
2021-03-18 22:23:36 +02:00
Delyan Angelov
00651c8deb
builtin: free all elements in a `[]string` with -autofree too
2021-03-18 21:10:42 +02:00
Delyan Angelov
d4e16b6ddd
builtin: reduce memory allocations for s.trim, s.trim_left and s.trim_right
2021-03-18 19:52:33 +02:00
Delyan Angelov
09802707b1
tests: move rlock and shared array tests from `builtin` to `sync`
2021-03-18 19:51:11 +02:00
Delyan Angelov
b7a5fa7fbe
os: fix `v -cflags "-Werror" test vlib/os/`
2021-03-18 19:45:04 +02:00
Miccah
7222ee476b
all: implement array .any and .all ( #9347 )
2021-03-18 15:24:16 +01:00
spaceface
624c1f3bcf
cgen: make `bool`s take up a single byte, not 4 ( #9352 )
2021-03-18 15:23:29 +01:00
zakuro
4ae2c22c18
checker: make optional array element an error ( #9343 )
2021-03-18 15:11:51 +02:00
yuyi
a6c2c5ba88
parser: minor cleanup in call_args() ( #9344 )
2021-03-18 15:06:48 +02:00
Swastik Baranwal
f28e67d526
cmd/tools/v/vdoc: keep `_` sep in numeric literals and highlight modules properly ( #9358 )
2021-03-18 15:06:16 +02:00
Ned Palacios
eccf707270
vdoc: improve error message for non-existing symbols ( #9359 )
2021-03-18 15:04:53 +02:00
Delyan Angelov
7bbcf02134
ci: fix failing -Werror steps for code generated by json.encode(map{'a': []string{}})
2021-03-18 12:13:06 +02:00
Delyan Angelov
f7a8a460f6
v.parser: add a test for db46ad5
2021-03-18 11:31:17 +02:00
Delyan Angelov
db46ad5481
v.parser: fix `xxx.fncall(map{x: []string{}})` treatment as `[]xxx.string{}`
2021-03-18 11:07:25 +02:00
Alexander Medvednikov
4e62bc0b81
autofree: fix free before return
2021-03-18 05:41:50 +03:00
Alexander Medvednikov
88097125f7
checker: remove "use `++` instead of `+= 1`"
2021-03-18 01:37:36 +03:00
zakuro
6cfc2c217b
checker: fix #9330 ( #9342 )
2021-03-17 20:57:14 +02:00
Lukas Neubert
49eeddcd1c
parser: set correct last line for struct inits ( #9349 )
2021-03-17 20:46:08 +02:00
Lukas Neubert
0a06a83d9b
fmt: fix possible removal of PrefixExpr or blocks ( #9351 )
2021-03-17 20:43:28 +02:00
Delyan Angelov
e8df8bc8c3
ci: fix for `-autofree vlib/v/tests/option_test.v`
2021-03-17 14:44:45 +02:00
Delyan Angelov
99cc02685b
cgen: implement IError.free() and use it for the builtin `none` const
2021-03-17 12:38:24 +02:00
Delyan Angelov
ae401bd930
ci: fix the `./v -g -autofree -o v2 cmd/v` step
2021-03-17 09:48:56 +02:00
crthpl
fafb035fb5
all: reimplement inline assembly ( #8645 )
2021-03-17 01:43:17 +01:00
yuyi
dd9f9c2718
checker: check array.sort(a < b) ( #9321 )
2021-03-17 01:42:51 +01:00
ka-weihe
2991cad4e8
map: fix delete in for-in ( #9336 )
2021-03-17 01:42:33 +01:00
Alexander Medvednikov
149151b1e8
cgen: minor vfmt
2021-03-17 03:41:52 +03:00
Alexander Medvednikov
091a1bab27
autofree: free global map consts and some vweb fixes
2021-03-17 01:33:35 +01:00
shadowninja55
b4f7a975e8
builtin.string: optimize string.count where substr.len == 1 ( #9337 )
2021-03-17 00:19:48 +02:00
Enzo
4b6244c9c1
gen: fix generic variadic ( #9333 )
2021-03-17 00:18:43 +02:00
Lukas Neubert
05b51c5b01
parser: correctly set pos of sql blocks ( #9334 )
2021-03-16 23:00:50 +02:00
Delyan Angelov
1753445a64
builtin: make panics more IDE friendly
2021-03-16 20:50:11 +02:00
Lukas Neubert
e554415123
fmt: allow ascii art block comments ( #9332 )
2021-03-16 20:49:55 +02:00
shadowninja55
d92f9e77b0
builtin.string: optimize string.split_nth() for len == 1 delim ( #9325 )
2021-03-16 20:30:27 +02:00
JalonSolov
6f550ebbdc
string: fix fields method when no whitespace ( #9326 )
2021-03-16 19:45:27 +02:00
Delyan Angelov
0547a0a9cd
ci: comment the `dump(fixed_array)` call in crypto_rand_read_test.v
2021-03-16 12:04:50 +02:00
Delyan Angelov
c09e85fa90
crypto.rand: add a test for rand.read/1
2021-03-16 11:37:05 +02:00
Delyan Angelov
0363206bac
crypto.rand: correct the error message in the shim
2021-03-16 11:25:59 +02:00
Delyan Angelov
5777706a58
crypto.rand: add a shim for `fn read(bytes_needed int) ?[]byte` in rand_default.c.v, so that it shows with `v doc`
2021-03-16 11:23:50 +02:00
Delyan Angelov
506561c792
cgen: fix a bug (deleting a map key while iterating on the same map) detected by `-d debug_realloc`
2021-03-16 09:20:45 +02:00
Alexander Medvednikov
93df560cf9
builtin: deprecate string.split_by_whitespace in favor of fields()
2021-03-16 08:29:14 +03:00
Alexander Medvednikov
138da8e130
stbi/sokol: fix png loading bug
2021-03-16 01:39:35 +03:00
Alexander Medvednikov
852d302b87
io: BufferedReader.free()
2021-03-15 21:25:19 +01:00
Alexander Medvednikov
667a26335f
builtin: fix substr()
2021-03-15 21:16:23 +01:00
Alexander Medvednikov
77d5fcca59
urllib: a temporary autofree fix
2021-03-15 21:12:11 +01:00
Leah Lundqvist
0823ea4af1
builder: produce an iOS binary instead of a bundle ( #9316 )
2021-03-15 19:03:05 +01:00
Delyan Angelov
7f0c8d1eec
builtin: fix a compilation warning with `-d debug_malloc`
2021-03-15 17:37:06 +02:00
Nick Treleaven
446631ceb5
checker: fixed array cannot implicitly convert to fooptr (again) ( #9302 )
2021-03-15 15:55:07 +02:00
Uwe Krüger
9d168895ed
checker: check write access to shared elements of `struct` and `array` ( #9314 )
2021-03-15 15:54:06 +02:00
Anton Zavodchikov
1ad4623fb8
tmpl: move to v/parser ( #9052 )
2021-03-15 13:35:55 +02:00
yuyi
2d2e4610e7
cgen: make use of mut_rec in method consistent ( #9308 )
2021-03-15 12:22:52 +02:00
yuyi
e235022e10
cgen: fix error of for_in map_literal ( #9310 )
2021-03-15 12:22:32 +02:00
Delyan Angelov
3951c351c6
os: simplify Process (remove chainability of Process method calls)
2021-03-15 09:23:43 +02:00
Delyan Angelov
25c07c2f43
v.ast: handle more expressions in Expr.str()
2021-03-15 06:27:56 +02:00
zakuro
80ac1aaf93
fmt: use type_to_str_using_aliases ( #9306 )
2021-03-15 06:27:08 +02:00
yuyi
945769a4f6
all: implement reference receiver optimization for big structs ( #9268 )
2021-03-14 18:11:21 +01:00
StunxFS
92e95f127a
checker: correct type check for generic function with ternary if return ( #9296 )
2021-03-14 19:01:32 +02:00
yuyi
e677daf608
cgen: fix array_sort and format array_filter/map generated codes ( #9303 )
2021-03-14 18:47:43 +02:00
Delyan Angelov
2f4a49994a
builtin: implement support for `-d debug_malloc` too
2021-03-14 18:29:00 +02:00
Delyan Angelov
d65ad68e77
builtin: add 0 terminators for strings returned by .to_lower, .to_upper, utf32_to_str_no_malloc/2
2021-03-14 18:21:45 +02:00
Delyan Angelov
b6d089b605
v.depgraph: ensure `v -d debug_realloc -o v cmd/v` works
2021-03-14 16:15:33 +02:00
Enzo
db152868c0
fix: fix infering int and float literal in generic fn calls ( #9287 )
2021-03-14 15:00:47 +02:00
yuyi
c0779e8455
cgen: fix return_statement generated redundant `;` ( #9299 )
2021-03-14 14:58:17 +02:00
Delyan Angelov
125be84e3d
builtin: fix `-d debug_realloc`, add realloc_data/3
2021-03-14 14:54:35 +02:00
Delyan Angelov
ddbe57e00a
v test-cleancode: ensure more .v files are kept vmft-ed
2021-03-14 12:17:31 +02:00
spaceface
eebc8a9d7a
builtin: cleanup option names (part 2) ( #9294 )
2021-03-14 12:11:52 +02:00
zakuro
8dc0e4d150
v.scanner: decode \uXXXX in scanner ( #9298 )
2021-03-14 12:09:17 +02:00
Delyan Angelov
69f1e7c9c3
v: fixes for `v -autofree -o v2 cmd/v`
2021-03-14 09:37:38 +02:00
Leah Lundqvist
64d0006ff9
jsgen: fix string and array for loops and improve casting ( #9295 )
2021-03-14 08:20:01 +02:00
Nick Treleaven
df46fe1373
builder: warn when using tcc with -prod ( #9288 )
2021-03-14 01:55:14 +01:00
spaceface
9ed9e7aff0
builtin: cleanup option names (part 1) ( #9293 )
2021-03-14 01:54:46 +01:00
yuyi
5a6b321656
cgen: format if_guard_expr generated c codes ( #9290 )
2021-03-14 01:54:05 +01:00
spaceface
e9797c618a
all: implement error interfaces ( #9291 )
2021-03-13 18:13:50 +01:00
Alexander Medvednikov
167dcc415d
tests: fix a generic init test
2021-03-13 18:46:02 +03:00
Alexander Medvednikov
f86233c41f
autofree: fix [manualfree]
2021-03-13 18:43:02 +03:00
Alexander Medvednikov
2f1810634e
checker: do not allow direct initialization of builtin types (s := string{})
2021-03-13 18:20:46 +03:00
Lukas Neubert
f648e3f10d
fmt: use iembed cmts in arrays at line start when exprs come afterwards ( #9285 )
2021-03-13 09:58:50 +02:00
Ulises Jeremias Cornejo Fandos
5e02f6358c
math: add a test suite taken from vsl/vmath ( #9280 )
2021-03-13 09:05:02 +02:00
Nick Treleaven
c06e58d418
gen: fix generating `$if expr || expr` ( #9270 )
2021-03-13 08:45:50 +02:00
Lukas Neubert
fecf4a6f58
os: fix rmdir_all panic with hidden dirs ( #9271 )
2021-03-13 08:43:38 +02:00
Andréas Livet
603012be94
gg: add draw_image_part ( #9277 )
2021-03-13 08:39:10 +02:00
Vitalie Lazu
cccca51788
pg: support for copy sql commands ( #9272 )
2021-03-13 08:06:53 +02:00
zakuro
00dedaf6c1
scanner: replace ascii unicode(\u0020) with hex(\x20) ( #9259 )
2021-03-13 08:02:42 +02:00
Subhomoy Haldar
08da33fa5a
rand: add non uniform distributions in the `rand.dist` module ( #9274 )
2021-03-12 21:24:43 +02:00
Delyan Angelov
0c33656a19
ci: fix failing option_print_errors_test.v
2021-03-12 20:36:19 +02:00
spaceface
be409b52e9
builtin: prepare for error interfaces ( #9043 )
2021-03-12 20:05:05 +02:00
Delyan Angelov
c474106511
cgen: fix match expression with complex boolean conditions
2021-03-12 19:55:33 +02:00
StunxFS
3cb1bb7c36
checker: check the amount of parameters passed to `json.decode()` ( #9267 )
2021-03-12 19:02:09 +02:00
StunxFS
90d942e2ec
os: add missing '.exe' in os_test.v ( #9269 )
2021-03-12 18:05:29 +02:00
Nick Treleaven
9db8a61b92
checker: disallow array append in an expression ( #9265 )
2021-03-12 16:09:01 +01:00
Uwe Krüger
dbbf96702b
checker: require `shared a` to be `rlocked` to read `a[i]` or `a.e` ( #9266 )
2021-03-12 16:08:39 +01:00
Delyan Angelov
def53fd73f
os: prevent os.exists_in_system_path() from panicing
2021-03-12 17:05:26 +02:00
Delyan Angelov
995db65471
os: fix os.cp_all, by making the dst folder, if it does not exist already
2021-03-12 16:29:27 +02:00
Nick Treleaven
e229d0c1c3
checker: improve error message for invalid property ( #9263 )
2021-03-12 14:18:52 +02:00
Nick Treleaven
3be78d6777
parser: require anonymous fn to use `_` for unused parameters ( #9262 )
...
Fixes a C error with gcc.
2021-03-12 14:17:37 +02:00
yuyi
504b87bcfd
checker: minor cleanup in if_expr() ( #9258 )
2021-03-12 13:40:05 +02:00
Lukas Neubert
cfbb783649
fmt: fix linebreak in non-block consts ( #9260 )
2021-03-12 12:27:05 +02:00
Lukas Neubert
a67d49050c
math: add a pure V `math.mathutil`, with generic `min`, `max` and `abs` functions ( #9176 ), and use it consistently
2021-03-12 11:28:04 +02:00
Alexander Medvednikov
530b981765
vweb: mark send_response_to_client with [manualfree]
2021-03-12 01:11:43 +03:00
Lukas Neubert
c40ab0db72
fmt: fix removal of attrs with comments afterwards ( #9255 )
2021-03-11 21:44:33 +01:00
StunxFS
04c4f16f75
checker: minor changes to `Checker.hash_stmt()` ( #9249 )
2021-03-11 21:43:42 +01:00
StunxFS
8f08795689
checker: warn/error about empty const blocks ( #9252 )
2021-03-11 21:43:04 +01:00
yuyi
9fbb139e29
checker: check map copy error in fn_mut_arg ( #9242 )
2021-03-11 15:19:36 +01:00
Miccah
f26d2f02b7
ast, cgen, checker, parser: support method arguments in comptime $for ( #9208 )
2021-03-11 15:04:34 +02:00
StunxFS
8de6511056
cgen: minor optimization to `for ch in "StringLiteral"` ( #9240 )
2021-03-11 15:01:53 +02:00
yuyi
a547e889af
checker: check array literal modify error ( #9243 )
2021-03-11 14:57:04 +02:00
Lukas Neubert
f69cef397c
fmt: do not insert a space before struct declaration generics ( #9239 )
2021-03-11 14:54:40 +02:00
spaceface
7d0cba5e96
v.ast: remove the `stmt.position()` method ( #9233 )
2021-03-11 14:50:02 +02:00
Delyan Angelov
6628bbc690
cgen: use the new __offsetof_ptr macro
2021-03-11 13:14:36 +02:00
Delyan Angelov
144546543c
cgen: add the __offsetof_ptr C macro
2021-03-11 13:08:45 +02:00
Delyan Angelov
5a231326d7
parser: improve syntax errors in module declarations
2021-03-11 10:42:36 +02:00
StunxFS
6a7ef4f5b2
v.scanner: fix position of hash statements ( #9222 )
2021-03-10 20:23:17 +02:00
penguindark
c554e0b33d
gg.m4: fix a bug on translate, remove abs fn ( #9224 )
2021-03-10 20:20:17 +02:00
zakuro
f280a5c230
checker: extract into call_array_builtin_method to cleanup ( #9225 )
2021-03-10 20:19:39 +02:00
zakuro
ef73e07e62
checker: split fn_decl into functions to cleanup ( #9226 )
2021-03-10 20:18:48 +02:00
zakuro
791dec7b01
v: support `$if prod` ( #9228 )
2021-03-10 19:26:34 +02:00
Enzo
99abd46ac9
os: add `(read|write)_raw[_at]` to File ( #9171 )
2021-03-10 18:45:12 +02:00
Swastik Baranwal
8d84206a8c
cgen: fix match for one branch ( #9234 )
2021-03-10 18:44:32 +02:00
spaceface
eefdad21c7
cgen: cleanup interface/sumtype casts ( #9221 )
2021-03-10 18:41:11 +02:00
Larpon
0a39c2b9ea
gg: expand C.ANativeActivity struct definition ( #9231 )
2021-03-10 18:38:20 +02:00
yuyi
a187a4abb3
checker: check non-optional fn return or_block ( #9227 )
2021-03-10 12:53:23 +01:00
Delyan Angelov
0d2bb714bc
checker: disallow `x := [13]SumType{}` too
2021-03-10 11:07:36 +02:00
Delyan Angelov
f5ebfefdc9
ci: use a smaller fixed size array for the const eval test (fixes failing windows job)
2021-03-10 10:40:41 +02:00
Joe Conigliaro
fd2845e955
v.util: change naming behaviour for modules relative to working dir. closes #9138
2021-03-10 16:28:06 +11:00
Delyan Angelov
96a9e16e64
checker: allow `a := [5*kb]byte{}` where `kb` is a compile time known const too
2021-03-09 20:21:36 +02:00
Delyan Angelov
26cfd0eda9
checker: eval `const a = 1024 * 1024` and other simple integer expressions at compile time
2021-03-09 20:07:08 +02:00
spaceface
f1469a8761
checker: allow accessing fields common to all sumtype members ( #9201 )
2021-03-09 19:16:18 +02:00
yuyi
c4b0fdcbaf
cgen: fix for_in fixed_array of fixed_array literal ( #9206 )
2021-03-09 16:18:07 +02:00
yuyi
e67ce5ea7b
cgen: fix error of alias interpolation ( #9209 )
2021-03-09 13:25:31 +02:00
Ned Palacios
114a7db6e5
vdoc: fix symbol filtering ( #9210 )
2021-03-09 13:05:50 +02:00
zakuro
00399b49ab
v.util: add util.tabs() ( #9211 )
2021-03-09 13:03:25 +02:00
yuyi
fbc02cbc54
csv: fix reader_test.v ( #9204 )
2021-03-09 03:53:02 +01:00
Vassilis Panagiotopoulos
b893373e63
cgen: make .alias fields in structs use their proper string format, instead of the default %d ( #9197 )
2021-03-08 23:36:59 +02:00
Delyan Angelov
d7049ae2da
os: deprecate os.exec (returning ?os.Result), in favour of os.execute, which returns os.Result ( #8974 )
2021-03-08 20:52:13 +02:00
yuyi
10c9f61d61
checker: check empty map invalid syntax ( fix #9162 ) ( #9186 )
2021-03-08 19:48:17 +02:00
StunxFS
9a7d9e047b
dl: move 'example' to 'examples/dynamic_library_loading' ( #9187 )
2021-03-08 18:21:43 +02:00
Taegon Kim
4d24cb0158
darwin: fix the C. function declarations ( #9194 )
2021-03-08 17:18:26 +02:00
yuyi
b64d781a20
csv: fix error of read() ( #9193 )
2021-03-08 16:57:02 +02:00
yuyi
568faeed77
cgen: add `expr_string() and remove redundant codes ( #9188 )
2021-03-08 12:46:39 +02:00
yuyi
f2e570d63c
tests: add `for` tests of labelled continue and break ( #9189 )
2021-03-08 12:45:12 +02:00
Delyan Angelov
33bd22eda9
vlib/v/gen/tests: remove obsolete generation tests (used during the AST migration from v1 to v2)
2021-03-07 18:47:58 +02:00
pancake
ed9ca0b7bd
build: add address sanitizer make target ( #9044 )
2021-03-07 16:44:54 +01:00
zakuro
4c3ce97763
parser: fix Enum.value when Enum is an imported symbol ( #9046 )
2021-03-07 16:44:38 +01:00
Miccah
a1e0f2bc46
gen: add argument names to compile-time method struct ( #9174 )
2021-03-07 14:28:43 +01:00
yuyi
1b47e2953d
checker: check undefined ident of struct ( #9164 )
2021-03-07 14:09:38 +01:00
Delyan Angelov
f1c4e962f4
tests: add tests for `-d debug`, `-cg`, `-g` in combination for `[if debug]fn` etc
2021-03-07 12:42:30 +02:00
Delyan Angelov
64bc2fb40a
v: fix `[if debug] fn abc(){} ... abc()`
2021-03-07 12:05:07 +02:00
Delyan Angelov
c15de57f0f
tests: simplify the profile_test.v example program to not use `net`
...
(avoids unrelated openssl dependency)
2021-03-07 12:05:06 +02:00
Delyan Angelov
d0b89c5675
tests: rename for_c_multi_vars.v to for_c_multi_vars_test.v
2021-03-07 12:05:06 +02:00
nyx-litenite
a902178fdb
arrays: implement python-inspired array zip function and test ( #8667 )
2021-03-07 11:58:13 +02:00
yuyi
82085b0140
cgen: fix for_in map of fixed_array ( #9133 )
2021-03-07 11:41:08 +02:00
zakuro
45d51c76da
v.util: add an iabs(x) helper ( #9172 )
2021-03-07 11:24:05 +02:00
Lukas Neubert
6048d0e974
fmt: fix backslash doubling in attribute string args ( #9175 )
2021-03-07 09:44:58 +02:00
Lukas Neubert
053d6870d2
fmt: respect user choice of empty lines between type declarations ( #9135 )
2021-03-06 21:05:55 +02:00
Lukas Neubert
fdcfe397d4
fmt: write empty or blocks the same as empty fn bodies, empty structs, etc ( #9136 )
2021-03-06 21:04:51 +02:00
Lukas Neubert
043c29cf95
fmt: fix string interpolation with CastExpr ( #9137 )
2021-03-06 20:47:19 +02:00
Bartimus
ce92bf8da0
os.File: add .read_struct_at and .write_struct_at ( #9114 )
2021-03-06 20:44:53 +02:00
zakuro
7333b1706c
checker: minor cleanup: clear_flag(.optional) in check_expr_opt_call ( #9139 )
2021-03-06 20:42:34 +02:00
zakuro
b83530e0ed
fmt: extract part of fmt.v into struct.v ( #9141 )
2021-03-06 20:40:44 +02:00
Lukas Neubert
7f7f9dca6b
parser,fmt: fix regression with non-void arrays in if conditions ( #9161 )
2021-03-06 20:39:38 +02:00
Delyan Angelov
849cde245c
v: support dump(expr) ( #9160 )
2021-03-06 18:09:28 +01:00
penguindark
270df58057
gg.m4: fixed some bugs, added ortho projection ( #9140 )
2021-03-06 12:14:43 +02:00
yuyi
c802515e71
cgen: minor optimization in gen_code buffer init ( #9143 )
2021-03-06 12:03:38 +02:00
R cqls
204f57d227
os: update C apis used in os_android.c.v ( #9134 )
2021-03-05 19:20:11 +02:00
Larpon
07a1a9b84d
builtin: use fprintf to print to stderr on Android ( #9130 )
2021-03-05 19:12:42 +02:00
Delyan Angelov
fa530683c7
v: fix warnings for `v self`
2021-03-05 17:24:00 +02:00
Alexander Medvednikov
845e8decce
x64: basic mach-o and arm64 support
2021-03-05 17:52:39 +03:00
Joe Conigliaro
818be80581
parser: fix [] in if expr. closes #9131
2021-03-06 01:43:34 +11:00
joe-conigliaro
2d73411396
checker: define missing C fn args & check C & JS args ( #8770 )
2021-03-05 17:41:11 +03:00
Lukas Neubert
ead2ba6004
fmt: proper single line check for ConcatExpr ( #9121 )
2021-03-05 15:36:49 +03:00
yuyi
cbbfb460a7
cgen: fix for_in fixed_array ( #9129 )
2021-03-05 15:35:09 +03:00
zakuro
9ba312066e
fmt: extract type decls code into functions to cleanup ( #9126 )
2021-03-05 15:34:51 +03:00
Delyan Angelov
0f042124cb
tests: support `fn test_fn() ? { opt()? }`
2021-03-05 14:18:21 +02:00
yuyi
f4c03e8ed8
cgen: minor optimization in for_in_array ( #9127 )
2021-03-05 07:58:09 +02:00
Lukas Neubert
80356edd8c
fmt: combine simple attributes into a single line ( #9120 )
2021-03-05 07:17:57 +02:00
Gal Pasternak
208cabc994
checker: fix generic type ignores implemented interface ( #9124 )
2021-03-05 06:59:18 +02:00
Alexander Medvednikov
7446d8dc44
strings: test Builder's cut_last on windows
2021-03-04 20:35:17 +03:00
Miccah
709d7460de
vweb: refactor form parsing and add tests ( #9051 )
2021-03-04 18:00:03 +02:00
Delyan Angelov
6da66226e5
vfmt: keep `mut:` in interface declarations ( #9053 )
2021-03-04 15:30:30 +02:00
zakuro
4f02da00ba
checker: check arguments count of sort ( #9105 )
2021-03-04 15:22:47 +02:00
Leah Lundqvist
65e888230a
jsgen: object equality checks, optimise casting and start builtin implementation ( #9068 )
2021-03-04 14:02:16 +01:00
Delyan Angelov
5e0e44eb69
os: move file methods to vlib/os/file.c.v, document them, add new file.read_struct and file.write_struct and tests
2021-03-04 14:54:39 +02:00
yuyi
6097045b46
cgen: minor cleanup of cgen.v ( #9108 )
2021-03-04 14:40:57 +02:00
pancake
c65d65a3f5
v: use dash instead of lowerdash for -print-v-files ( #9111 )
2021-03-04 14:38:05 +02:00
Delyan Angelov
eb1e1afbc1
ci: fix failing fn_trailing_arg_syntax_keep.vv
2021-03-04 13:05:14 +02:00
yuyi
7c893895d8
cgen: minor cleanup in infix_expr() ( #9086 )
2021-03-04 12:50:18 +02:00
zakuro
6b2c7fd53e
fmt: remove tail space when using multiline short arg ( #9110 )
2021-03-04 12:44:50 +02:00
Lukas Neubert
8ce53b8b55
fmt: prevent code corruption with struct update syntax as trailing function arg ( #9091 )
2021-03-04 12:44:17 +02:00
Lukas Neubert
28fc91acb7
fmt: minor cleanups ( #9090 )
2021-03-04 12:43:11 +02:00
spaceface
7663f826e5
cgen: add auto str method generation for interfaces ( #9095 )
2021-03-04 12:41:42 +02:00
yuyi
5f9af3f594
cgen: fix for_in array of fixed_array ( fix #9098 ) ( #9099 )
2021-03-04 12:39:39 +02:00
zakuro
5b041db442
fmt: don't prepend mod when cast with selective imported types ( #9109 )
2021-03-04 12:33:52 +02:00
James Addison
a64d9b3e12
termui: add show_cursor() and hide_cursor() ( #9087 )
2021-03-04 12:31:26 +02:00
zakuro
9bb073580e
checker: replace checking type exists with c.ensure_type_exists ( #9100 )
2021-03-04 12:28:48 +02:00
yuyi
2870a5a63a
vrepl: fix array_filter ( #9104 )
2021-03-04 12:24:14 +02:00
yuyi
2b9ffbda42
cgen: fix array_sort by different order of a/b ( #9106 )
2021-03-04 11:19:02 +01:00
Larpon
d08f994e19
clipboard: ensure public method access after #9062 . Fixes #9089 ( #9107 )
2021-03-04 10:49:40 +02:00
Delyan Angelov
2bfa6dfe2f
io: fix not reading the last byte of a stream with `.read(mut buf)`
2021-03-04 08:59:48 +02:00
Lukas Neubert
0f8f8bd90d
fmt: force empty lines after struct declarations and most functions ( #9096 )
2021-03-03 23:56:40 +01:00
Enzo
3e5a0dfc94
time: minor cleanup of operators ( #9097 )
2021-03-03 23:56:14 +01:00
yuyi
822d20d2cc
cgen: minor simplification of struct zero init ( #9085 )
2021-03-03 16:03:50 +01:00
Patrick Hintermayer
38495da07e
docs: add a basic vweb getting started example ( #9073 )
2021-03-03 14:39:04 +02:00
yuyi
6825b4cb30
cgen: format if_expr generated c codes ( #9084 )
2021-03-03 14:33:00 +02:00
Subhomoy Haldar
a5dd7faf3c
rand: add PRNG interface and unit-tests ( #9083 )
2021-03-03 13:41:00 +02:00
Nick Treleaven
412c17ccda
checker: check private built-in methods are not accessible ( #9062 )
2021-03-03 11:12:50 +02:00
Nick Treleaven
bd6693efb8
gg/m4: fix unnecessary uses of [direct_array_access], add [unsafe] ( #9059 )
2021-03-03 10:20:13 +02:00
Lukas Neubert
460e06b9ff
fmt: do not insert a newline before returned $vweb.html() ( #9063 )
2021-03-03 10:14:05 +02:00
yuyi
97f9abcf82
cgen: fix anon_fn in containers ( #9077 )
2021-03-03 10:12:08 +02:00
Uwe Krüger
dd475f4e37
checker/cgen: enable `IfGuardExpr` for `a[k]` and `<-ch` ( #9065 )
2021-03-03 10:10:38 +02:00
StunxFS
dad7c40306
checker: minor cleanup in `call_method` ( #9066 )
2021-03-03 10:07:16 +02:00
Delyan Angelov
094936d764
ci: reduce chances of false positives from vweb_test.v on macos
2021-03-03 10:04:12 +02:00
zakuro
c74fa9e471
checker: correct pos for type error of `if v is interface` ( #9080 )
2021-03-03 09:23:39 +02:00
Lukas Neubert
8a0b5bad94
fmt: keep empty lines in const blocks ( #9071 )
2021-03-03 09:23:11 +02:00
Delyan Angelov
b89c6d7826
Revert "rand: use static instead of __global ( #9057 )"
...
This reverts commit ec2f731801
.
2021-03-03 08:36:56 +02:00
Delyan Angelov
ec2f731801
rand: use static instead of __global ( #9057 )
2021-03-03 07:47:47 +02:00
Joe Conigliaro
a50f2ca5e8
interfaces: error on implemention of own interface method & on duplicate normal methods
2021-03-03 15:02:10 +11:00
StunxFS
0dafdb4cde
dl: minor improvement of get_shared_library_extension ( #9070 )
2021-03-02 21:38:32 +02:00
Miccah
b3a31e7626
vweb: add test for 0 Content-Length hang ( #9069 )
2021-03-02 21:31:57 +02:00
Delyan Angelov
cd423251da
vweb: add .mount_static_folder_at/2 , use it instead of app.handle_static in the server_sent_events example
2021-03-02 21:30:18 +02:00
Delyan Angelov
eb4c60877e
vweb: fix timeouting after 30 seconds, when a request with `Content-Length: 0` was processed
2021-03-02 21:02:44 +02:00
Delyan Angelov
488848e904
builtin: simplify copy/2
2021-03-02 18:14:42 +02:00
Delyan Angelov
d0e8e8f178
checker: add error for `print( voidfn() )`
2021-03-02 17:54:38 +02:00
yuyi
62ccd740f0
cgen: minor perf fix in index_expr() ( #9054 )
2021-03-02 12:28:26 +01:00
Delyan Angelov
31321b68ea
v: show help for -h, -help, and --help, in addition to `v help`
2021-03-02 12:22:10 +02:00
yuyi
81dbd72412
cgen: fix anon_fn in containers ( fix #8965 ) ( #9049 )
2021-03-02 10:26:27 +02:00
Joe Conigliaro
01735c67c6
cgen: fix duplicate method wrapper from interface method call. closes #9018
2021-03-02 19:15:49 +11:00
spaceface
2b53992c01
checker, cgen: allow implementing an interface with an embedded struct ( #9042 )
2021-03-01 21:47:00 +01:00
yuyi
65900e55e3
cgen: fix if_expr of multi-stmts optional ( #9039 )
2021-03-01 21:39:04 +01:00
Nick Treleaven
dc04c3196b
builder: fix detecting duplicate functions ( #9033 )
2021-03-01 21:38:31 +01:00
yuyi
6d77594409
cgen: merge cc_type and cc_type2 ( #9036 )
2021-03-01 21:36:58 +01:00
zakuro
db9b523cc9
utf8: deprecate utf8.char_len ( #9008 )
2021-03-01 15:35:57 +02:00
yuyi
f9c8d3d25c
cgen: fix return if true { 0 } else { none } ( fix #9005 ) ( #9030 )
2021-03-01 13:56:07 +01:00
Miccah
d0fab60981
vweb: refactor routing logic ( #9025 )
2021-03-01 11:50:52 +01:00
makino
8045395cbd
net: document pub structs & functions in http/http.v ( #9016 )
2021-03-01 10:48:38 +01:00
Ned Palacios
ee879f3e41
x.json2: proper string encoding + minor fixes ( #9026 )
2021-03-01 10:22:36 +01:00
Anton Zavodchikov
506041a15b
tmpl: fix doubling templates folder path and enhancements ( #9029 )
2021-03-01 11:15:59 +02:00
spaceface
15896beace
cgen: scope `$for` fields/methods independently ( #9017 )
2021-03-01 01:01:56 +01:00
spaceface
b712af56fd
all: bring back `panic(err.msg)` -> `panic(err)` ( #9022 )
2021-03-01 00:18:14 +01:00
zakuro
ce115dcbe0
builtin: correct error underline for unicode wide chars ( #9010 )
2021-03-01 00:18:02 +01:00
Uwe Krüger
e937d6249c
cgen: fix various issues concerning optionals ( #9021 )
2021-02-28 23:21:03 +01:00
spaceface
d7252f4474
builtin: allow passing any argument type to `panic` ( #9020 )
2021-02-28 22:57:18 +01:00
spaceface
d63b7bc35a
all: update repo to use the new error handling syntax ( #8950 )
2021-02-28 23:20:21 +03:00
spaceface
b9a381f101
all: migrate to the new Option (p. 1) ( #8924 )
2021-02-28 22:24:29 +03:00
Delyan Angelov
e354dcefc2
fmt: fix support for `mut static x := 42`
2021-02-28 19:40:21 +02:00
Delyan Angelov
4076e8eaa0
tmpl: add a tmpl_all_in_one_folder.vv test; fix for static_vars_in_translated_mode.vv
2021-02-28 19:14:19 +02:00
Delyan Angelov
e564269477
ci: fix static_vars_in_translated_mode.vv
2021-02-28 18:55:25 +02:00
Delyan Angelov
5e87eeb864
tmpl: support for `@include 'file.md'` as well as paths != templates/
2021-02-28 18:52:31 +02:00
Delyan Angelov
4125bfe401
all: fix references to time.wait -> time.sleep
2021-02-28 18:01:31 +02:00
Delyan Angelov
bdce35fd9c
parser: support `static x := 42` in [unsafe] functions too
2021-02-28 14:32:46 +02:00
Delyan Angelov
276c08e7f7
fmt: support static too
2021-02-28 13:08:16 +02:00
Miccah
7e08e84bc1
vweb: refactor HTTP request parsing ( #8874 )
2021-02-27 23:18:25 +01:00
Miccah
2f9687d29b
net: add HTTP Header struct and methods ( #8991 )
2021-02-27 22:54:27 +01:00
penguindark
1d69a0bd22
gg: window_size_real_pixels that for 3D without dpi scaling ( #9004 )
2021-02-27 22:11:26 +01:00
Patrick Hintermayer
ae01b480c4
docs: ROADMAP.md instead of roadmap.txt ( #9002 )
2021-02-27 21:18:47 +03:00
Delyan Angelov
20f9bdfa8e
os: fixes for os.input(), os.get_raw_stdin(), os.get_raw_line() in case of stdin EOF
2021-02-27 20:02:36 +02:00
Alexander Medvednikov
e6b4f9ff09
time: fix sleep() on windows
2021-02-27 20:53:27 +03:00
Alexander Medvednikov
3a2d696fac
time: time.wait() => time.sleep()
2021-02-27 20:41:06 +03:00
Alexander Medvednikov
be4a2e17d3
cgen: always use tmp vars in return_statement()
2021-02-27 20:00:19 +03:00
Alexander Medvednikov
d39866d4f7
cgen: optionals/autofree fixes
2021-02-27 17:11:30 +03:00
Delyan Angelov
efca21e988
math: cleanup math.v, document math.aprox_cos and math.aprox_sin
2021-02-27 11:18:43 +02:00
Nick Treleaven
a1244a9f5f
checker: check that the module `init` fn, should have no params, and no return type ( #8988 )
2021-02-27 11:11:20 +02:00
zakuro
d0a64f2da7
net/openssl/websocket: implement io.Writer ( #8980 )
2021-02-27 10:29:18 +02:00
Uwe Krüger
f67bff1696
all: support `thread` handles and `wait()` for functions returning optionals ( #8990 )
2021-02-27 10:16:55 +02:00
Nick Treleaven
aed348fb80
os: tag some File methods that take voidptr as unsafe - write_bytes, write_bytes_at ( #8985 )
2021-02-27 10:11:17 +02:00
zakuro
1fd0aceb42
parser: imporve generics detection ( #8992 )
2021-02-27 10:07:18 +02:00
Delyan Angelov
a9e9079e48
gg: make .set_cfg public
2021-02-27 09:15:39 +02:00
Nick Treleaven
23f231ee61
builtin: tag array methods unsafe: *_many, grow_len, pointers ( #8983 )
2021-02-26 22:55:09 +01:00
Nick Treleaven
8874379c48
checker: check left selector expression in `$if left is right` ( #8987 )
2021-02-26 21:51:35 +01:00
spaceface
51fae95339
cgen: move the condition of an iterator to a temp var ( #8989 )
2021-02-26 21:51:01 +01:00
Nick Treleaven
4ad95cfeaf
checker: check types with $for/$if introspection ( #8984 )
2021-02-26 15:26:50 +01:00
Delyan Angelov
1a8ff9d7dd
v.gen.c: ensure that @continue is escaped in the generated C code
2021-02-26 10:22:35 +02:00
zakuro
995bd66970
encoding.utf8.east_asian: add support for East_Asian_Width ( #8978 )
...
See https://www.unicode.org/reports/tr11/
2021-02-26 09:52:07 +02:00
yuyi
524372d49c
parser: fix incorrect comments of expr() ( #8979 )
2021-02-26 09:21:58 +02:00
zakuro
89c82ff8e2
parser: treat f<mod.Type> as generic call not `<` operator ( #8938 )
2021-02-26 09:05:00 +02:00
Lukas Neubert
5aebd646bb
fmt: keep some line comments in multi line arrays ( #8969 )
2021-02-26 09:01:03 +02:00
Lukas Neubert
2c609411dd
fmt: do not write single line or blocks with multi line stmts ( #8952 )
2021-02-26 08:41:24 +02:00
Ned Palacios
8dff168e01
x.json2: create custom scanner for scanning JSON ( #8716 )
2021-02-26 08:36:02 +02:00
Nick Treleaven
59d4d0ef1d
checker: detect unknown type to iterate with $for ( #8971 )
2021-02-26 08:28:19 +02:00
Nick Treleaven
3a082621c9
checker: add a check for casting to an unknown type ( #8968 )
2021-02-26 08:26:36 +02:00
zakuro
bc0507590e
crypto: make digest implement io.Writer ( #8975 )
2021-02-26 08:24:47 +02:00
Miccah
d81b6e7805
encoding.base64: change base64 function signatures to use `[]byte` ( #8970 )
2021-02-26 08:22:12 +02:00
Nick Treleaven
c03798e390
checker: disallow implicit conversion from fixed array to fooptr ( #8823 )
2021-02-26 00:28:47 +01:00
Delyan Angelov
639061be6c
examples: fix left/right arrows in examples/term.ui/text_editor.v
2021-02-25 21:01:27 +02:00
yuyi
c7587c0760
cgen: minor cleanup in for_in_stmt() ( #8962 )
2021-02-25 13:24:42 +01:00
StunxFS
2e381f427a
net.html: use `or {}` in .writeln() method calls ( fix #8942 ) ( #8953 )
2021-02-25 13:24:30 +01:00
Ruofan XU
1a8e502e2c
ci: add tcc32 CI on windows ( #8922 )
2021-02-25 12:52:12 +01:00
yuyi
c762d150c6
cgen: fix anon_fn redefinition ( #8961 )
2021-02-25 12:16:35 +01:00
Delyan Angelov
fdc60817d3
sync: fix compilation on latest linux distros (having only gcc-10) with tcc
2021-02-25 12:35:27 +02:00
Lukas Neubert
e4beea4268
fmt: restructure comment line break logic inside arrays ( #8963 )
2021-02-25 11:10:54 +01:00
Delyan Angelov
77b3440e44
builder: make C compilation retrying more uniform
2021-02-25 11:56:54 +02:00
Lukas Neubert
7e27920cf7
fmt: fix inserted empty line before go stmt with anonymus function ( #8951 )
2021-02-25 01:30:04 +01:00
Uwe Krüger
12a4e7ad90
cgen: fix `type_to_fmt()` for `i64` and `u32` ( #8954 )
2021-02-25 01:29:44 +01:00
Nick Treleaven
57d1b5b74d
checker: show position for variadic/shared/method argument errors ( #8939 )
2021-02-24 19:35:32 +01:00
yuyi
3c94a79375
cgen: minor cleanup in gen_assert_xxx() ( #8943 )
2021-02-24 19:35:11 +01:00
Lukas Neubert
8e69d3629f
parser,fmt: refactor array comment handling to fully rely on the ecmnts field ( #8929 )
2021-02-24 19:33:59 +01:00
Lukas Neubert
b18d091e18
fmt: fix pos of added imports ( #8931 )
2021-02-24 19:33:17 +01:00
Lukas Neubert
e53476d5e1
fmt: do not remove chan type of struct fields ( #8948 )
2021-02-24 20:26:12 +02:00
Delyan Angelov
1c0eefae38
parser/scanner: replace p.peek_tok2/3 with p.peek_token(2/3) ( #8946 )
2021-02-24 21:03:53 +03:00
yuyi
1dd1be4400
cgen: fix if_expr with array.map ( fix #8925 ) ( #8937 )
2021-02-24 15:06:29 +02:00
yuyi
05a08530ff
cgen: implement for_stmt of multi_init_vars or multi_assign_vars ( #8917 )
2021-02-24 14:58:45 +02:00
StunxFS
0fa2f6d52c
dl: make vdoc ignore submodule "example" ( #8927 )
2021-02-23 18:32:48 +02:00
Delyan Angelov
ecef42832a
tests: make profile_test.v more robust
2021-02-23 18:30:53 +02:00
yuyi
302baaa7b4
cgen: fix error of match in fn_call ( #8900 )
2021-02-23 09:53:07 +02:00
Lukas Neubert
51125541c7
parser: fix weird minus after comment parse error in arrays ( #8912 )
2021-02-23 09:51:00 +02:00
StunxFS
fcc2094719
dl: add `get_libname` function ( #8909 )
2021-02-23 09:46:28 +02:00
StunxFS
fd59182659
szip: fix doc-comments ( #8911 )
2021-02-23 09:43:19 +02:00
zakuro
c113abe1a4
strings: make builder implement io.Writer ( #8914 )
2021-02-23 09:42:48 +02:00
Uwe Krüger
5674d46965
table,cgen: fix bug preventing `t := []thread{}` to compile ( #8913 )
2021-02-23 09:37:29 +02:00
spaceface
b4dc6c83cd
gg: handle Android's own native dpi scaling factor ( #8908 )
2021-02-22 21:24:18 +02:00
Emily Hudson
79edff5c6c
gen: correct indirection difference between reciever and object ( #8903 )
2021-02-22 20:41:25 +02:00
StunxFS
d78c9476e9
szip: use enums instead of constants ( #8905 )
2021-02-22 20:02:45 +02:00
R cqls
68972fcec6
gg: ensure window_size does not do / 0 ( #8907 )
2021-02-22 19:00:10 +02:00
spaceface
8033203ef6
builtin: add an Option2 struct ( #8890 )
2021-02-22 18:44:15 +02:00
Lukas Neubert
18aecde9e5
fmt: cleanup comments code ( #8901 )
2021-02-22 18:43:54 +02:00
Lukas Neubert
7f6c4caa01
fmt: fix missing space after single line array pre comments ( #8904 )
2021-02-22 17:53:55 +02:00
Delyan Angelov
fb028abc71
net.unix: make unix_test.v more robust
2021-02-22 17:48:31 +02:00
Delyan Angelov
fba28d2dcc
ci: increase the timeout for test_os_process (false positives on macos)
2021-02-22 17:24:52 +02:00
Delyan Angelov
b01a302a4e
net.http: fix compilation of trivial examples with `v -cflags -Werror`
2021-02-22 17:11:02 +02:00
Delyan Angelov
7c97b0b24d
gitly: fix compilation with -autofree
2021-02-22 17:00:48 +02:00
Delyan Angelov
467dce6be6
v.table: minimize re-allocations on << to table.types
2021-02-22 16:24:57 +02:00
yuyi
7a6fd359d0
checker: check fn_variadic with array_decompose ( #8894 )
2021-02-22 14:26:54 +01:00
Delyan Angelov
0029d3ca76
ci: fix test-cleancode
2021-02-22 15:22:51 +02:00
Uwe Krüger
5306b2788c
all: extend `wait()` method to array of `thread` handles ( #8840 )
2021-02-22 15:08:52 +02:00
StunxFS
ac1c4932e7
szip: change documentation style ( #8883 )
2021-02-22 14:59:36 +02:00
Swastik Baranwal
b2cdd2cac0
net.http: use .filter in sanitize/2 ( #8899 )
2021-02-22 14:58:48 +02:00
spaceface
1658c4789f
cgen: fix `match`ing interface types ( #8889 )
2021-02-22 14:55:43 +02:00
Nick Treleaven
15daeaeafa
cgen: add fixed array bounds checking for non-literal index ( #8832 )
2021-02-22 14:54:24 +02:00
Nick Treleaven
59446d7051
cgen: use `(void)` parameter list instead of `()` for type safety ( #8898 )
2021-02-22 14:48:32 +02:00
zakuro
f54c1a5cc2
all: add strings.Builder.write_string and use write_string instead of write ( #8892 )
2021-02-22 13:18:11 +02:00
Lukas Neubert
9dc770e29c
fmt: do not struggle with comments inside maps ( #8897 )
2021-02-22 13:04:48 +02:00
Delyan Angelov
5d653a37b6
os: make process_test.v more portable (prepare for windows)
2021-02-22 09:42:00 +02:00
Delyan Angelov
c37daba41d
ci: fix the remaining obsolete reference to time.sleep and time.usleep
2021-02-22 09:12:23 +02:00
Delyan Angelov
da05c7ed1a
ci: fix a deprecation time.sleep warning in `clipboard`
2021-02-22 09:00:30 +02:00
Delyan Angelov
9ab291319c
builder: fix thirdparty object files compilation with tcc (no -lxyz with -c)
2021-02-22 08:18:24 +02:00
Lukas Neubert
f18adf7759
parser,fmt: handle array pre-comments separately from exprs ( #8884 )
2021-02-21 20:18:19 +02:00
Lukas Neubert
18e88d2fc8
test-cleancode: add more of vlib/v ( #8882 )
2021-02-21 20:17:12 +02:00
Louis Schmieder
7a35131721
vweb: add handle static root & documentation ( #8865 )
2021-02-21 20:01:29 +02:00
yuyi
1a838b1f43
checker: fix error of match in map_init ( fix #8579 ) ( #8879 )
2021-02-21 17:09:42 +02:00
zakuro
ac4791045f
time: consolidate the different sleep functions into time.wait(Duration) ( #8853 )
2021-02-21 17:05:03 +02:00
Delyan Angelov
b1209aac1b
ci: fix building of vlib/x/websocket/websocket_test.v
2021-02-21 17:03:25 +02:00
Delyan Angelov
f2ce72c2bf
ci: split the websockets tests into their own CI .yml file
2021-02-21 16:35:27 +02:00
zakuro
95e5f68b64
cli: don't sort flags / commands by default ( #8813 )
2021-02-21 16:17:50 +02:00
spaceface
260f677469
term.ui: use the new `[flag]` enums ( #8881 )
2021-02-21 16:07:49 +02:00
Joe Conigliaro
0470baafa6
cgen: fix duplicate optional generation for struct field
2021-02-22 00:00:39 +11:00
Delyan Angelov
514cabd7c8
strings: cleanup strings builder, allow reusing it
2021-02-21 13:34:29 +02:00
yuyi
6e46f3850c
ast: change `expr.is_mut_ident()` to `expr.is_auto_deref_var()` ( #8869 )
2021-02-21 12:15:36 +02:00
zakuro
7928689ee2
parser: set is_public when registering enum type symbols ( #8875 )
2021-02-21 12:13:52 +02:00
yuyi
9a744b6750
cgen: fix in map_literal ( fix #8868 ) ( #8871 )
2021-02-21 11:54:30 +02:00
yuyi
e106dc3ad5
cgen: fix match_return with complex expr stmts ( #8876 )
2021-02-21 11:47:46 +02:00
Stanislav Ershov
44177c4e7c
builder: use stable MSVC version instead preview ( #8867 )
2021-02-21 00:00:44 +02:00
Nicolas Sauzede
f67a4c3ee0
checker, cgen: allow | between bitfield enum values, autogenerate a more specific .str method for them too ( #8856 )
2021-02-20 21:51:54 +02:00
penguindark
cc565b22a9
regex: remove [deprecated] functions/methods, code clean, add test for regex_base ( #8862 )
2021-02-20 21:39:08 +02:00
yuyi
8f486cb8cf
ast: minor cleanup of ast.v ( #8859 )
2021-02-20 20:50:43 +02:00
Stanislav Ershov
c190b6a131
vlib: remove older deprecated functions ( #8864 )
2021-02-20 20:42:55 +02:00
Stanislav Ershov
30ed201600
cgen: cleanup header for MSVC ( #8863 )
2021-02-20 20:39:46 +02:00
Delyan Angelov
746dfe6317
ci: make vweb and websocket tests more robust to transient errors
2021-02-20 20:24:21 +02:00
Nick Treleaven
28088cc494
checker: check fixed array index when it's a literal ( #8831 )
2021-02-20 20:18:47 +02:00
Delyan Angelov
5a333b0fdc
gen,parser: allow enums as map keys
2021-02-20 19:39:25 +02:00
Nick Treleaven
1e71c0eaca
checker: warn for deprecated methods too ( #8861 )
2021-02-20 19:25:54 +02:00
spaceface
adf2aa8760
pref: add a `-debug-tcc` alias option ( #8834 )
2021-02-20 18:53:22 +02:00
spaceface
cc3fd5333b
builder: print tcc output, when the system C compiler also failed ( #8835 )
2021-02-20 18:52:54 +02:00
yuyi
c704a49283
parser: fix error of $tmpl in anon_fn ( fix #8847 ) ( #8849 )
2021-02-20 18:51:08 +02:00
Delyan Angelov
8327c9afc1
checker: support a custom `[deprecated: 'message']`
2021-02-20 17:35:44 +02:00
Stanislav Ershov
44cb0426f4
cli: fix checking callbacks ( #8858 )
2021-02-20 17:30:39 +02:00
Lukas Neubert
a86bf3254a
fmt: keep empty line between if statement and comment ( #8846 )
2021-02-20 16:05:05 +02:00
Lukas Neubert
329e3938d9
fmt: respect user choice of newlines between functions without body ( #8838 )
2021-02-20 16:00:30 +02:00
yuyi
783cee98d9
table/parser: minor optimization of anon_fn names ( #8851 )
2021-02-20 15:54:47 +02:00
yuyi
e8abda189a
cgen: minor optimization in match_expr() ( #8848 )
2021-02-20 15:51:40 +02:00
Nick Treleaven
2be852e461
arrays: use for/in instead of unsafe `[direct_array_access]` ( #8857 )
2021-02-20 15:27:36 +02:00
zakuro
f381836f9e
fmt: sort names in selective imports ( #8827 )
2021-02-20 12:22:09 +01:00
yuyi
5e1159e4c3
checker: change non-const size of fixed array error message ( #8850 )
2021-02-20 12:14:44 +01:00
Lukas Neubert
859d382c6e
fmt: remove a few obsolete comments ( #8837 )
2021-02-20 09:54:55 +01:00
Nick Treleaven
bcb35e15f9
checker: only allow passing integer *literal* to non-integer pointer method parameter ( #8825 )
2021-02-19 14:14:40 +02:00
Miccah
a153ec5951
cli: ensure that required flags are set ( #8826 )
2021-02-19 12:43:18 +02:00
kristof de spiegeleer
3f3bec45fa
examples: add a template example, update the regex examples ( #8829 )
2021-02-19 12:39:15 +02:00
zakuro
6e262b5d84
checker: improve error position of infix expr ( #8828 )
2021-02-19 12:38:41 +02:00
Swastik Baranwal
ad162cd6fc
checker: stricter `unknown type` checks, show better suggestions ( #8816 )
2021-02-19 11:23:13 +02:00
Stanislav Ershov
6a752512b2
os: fix os.real_path on Windows ( #8822 )
2021-02-19 11:20:06 +02:00
Subhomoy Haldar
745b40c0a3
rand: refactor string sampling functions to remove redundancy ( #8830 )
2021-02-19 11:16:02 +02:00
yuyi
4878077c62
gen/c: fix gen_str_for_struct with custom ref str ( fix #7179 ) ( #8820 )
2021-02-18 18:19:42 +02:00
Alexander Medvednikov
0dbc9417e7
builder: vfmt msvc.v
2021-02-18 17:00:07 +03:00
Stanislav Ershov
51dd22bcc0
builder: support -m32/-m64 flags for msvc ( #8819 )
2021-02-18 14:58:47 +01:00
zakuro
1891ebf22d
scanner: print multibyte char for invalid char error ( #8804 )
2021-02-18 15:43:39 +02:00
Delyan Angelov
0142d58aa6
v.pref: prevent `Too many targets.` from triggering when the command is an external one
2021-02-18 12:13:28 +02:00
zakuro
0d69d97143
fmt: mark imports as used, when types from them are used in struct declarations ( #8810 )
2021-02-18 11:32:45 +02:00
zakuro
a34a1ab864
checker/table: minor cleanup by removing unnecessary `_` variable ( #8801 )
2021-02-18 11:30:43 +02:00
zakuro
b3a26ca0ce
v.pref: make passing multiple target .v files an error ( #8814 )
2021-02-18 09:42:00 +02:00
yuyi
a119affeba
cgen: check unknown sizeof type ( #8815 )
2021-02-18 09:38:57 +02:00
Delyan Angelov
bf6e9ff95a
Revert "parser: make duplicated functions an error ( #8792 )"
...
This reverts commit 21bf8fe14e
.
2021-02-18 09:02:56 +02:00
zakuro
21bf8fe14e
parser: make duplicated functions an error ( #8792 )
2021-02-17 20:50:10 +01:00
Nick Treleaven
33d8074846
crypto.rand: use byteptr.vbytes instead of c_array_to_bytes_tmp ( #8786 )
2021-02-17 21:47:19 +02:00
Nick Treleaven
4ccf991f61
checker: warn when casting a fixed array (use `&arr[0]` instead) ( #8787 )
2021-02-17 20:45:11 +01:00
yuyi
177c8bfc78
builtin/array: merge array_eq_test.v into array_test.v ( #8796 )
2021-02-17 20:44:44 +01:00
yuyi
4fa315edc2
checker: fix for _, mut j in array ( #8785 )
2021-02-17 20:44:28 +01:00
zakuro
600f6ad2a0
fmt: do not prepend mod to selectively imported types from nested module ( #8805 )
2021-02-17 20:42:26 +01:00
Delyan Angelov
ab6517c5fc
gg: support passing down the state of pressed mouse buttons in mouse moves events
2021-02-17 20:14:37 +02:00
Delyan Angelov
aa3d0ea345
vfmt: cleanup spurious printlns, remove obsolete code
2021-02-17 14:59:42 +02:00
Alexander Medvednikov
d4a05bebde
gg: use gg types for Events instead of sapp
2021-02-17 06:44:01 +01:00
zakuro
3341c17202
fmt: keep one empty line in struct decl ( #8782 )
2021-02-17 05:45:09 +01:00
Lukas Neubert
55b69a76a6
fmt: minor cleanup of or_expr ( #8789 )
2021-02-17 05:43:29 +01:00
Nick Treleaven
0f8edd918a
checker: disallow `unsafe` map copy ( #8720 )
2021-02-17 05:19:25 +01:00
Lukas Neubert
e4a67dea37
json2: wrap Builder.free() calls inside unsafe ( #8790 )
2021-02-17 02:19:26 +02:00
Delyan Angelov
2002d20249
io: remove unused Zzz_CoerceInterfaceTableGeneration struct; add test for `x := Enum{}`
2021-02-17 01:37:05 +02:00
Delyan Angelov
995e1c84a2
ci: fix `./v -cc gcc -cflags "-Werror" vlib/io/os_file_reader_test.v`
2021-02-17 01:08:28 +02:00
Delyan Angelov
fb09333a73
ci: fix interface table generation for vlib/io/os_file_reader_test.v with -cflags "-Werror"
2021-02-16 23:36:44 +02:00
Delyan Angelov
4961d3ea17
io: fix detection of end_of_stream, when reading files through io.new_buffered_reader(reader: io.make_reader(f))
2021-02-16 23:22:17 +02:00
Delyan Angelov
843de10442
parser,gen: fix `arr << map[key] using map_get_and_set_1, leading to double free
2021-02-16 16:39:31 +02:00
yuyi
982e35909d
cgen: fix `mut` var in `for` loop reads as address ( fix #8548 ) ( #8745 )
2021-02-16 13:24:19 +01:00
Nick Treleaven
01aa09d515
checker: do not allow copying any map lvalue ( #8662 )
2021-02-16 12:46:12 +01:00
zakuro
51c286df5a
fmt: fix bug that vfmt removes emmbeded struct in struct decl ( #8775 )
2021-02-16 12:45:56 +01:00
Christopher Dieringer
94429c8fd8
gg: window_size: normalize dpi scaling ( #8738 )
2021-02-16 12:41:21 +01:00
Uwe Krüger
0520b755f4
checker/cgen: support `print*()`, `.str()` and '$x' for `shared` ( #8771 )
2021-02-16 12:40:13 +01:00
zakuro
6813866141
fmt: fix bug of disappearing `pub` in struct decl ( #8777 )
2021-02-16 12:39:50 +01:00
Delyan Angelov
0bbc5a5c6a
fmt: add a small comment about f.line_len
2021-02-16 10:22:39 +02:00
Lukas Neubert
ad20b3806f
fmt: fix possible code corruption by unwrapped single line if ( #8780 )
2021-02-16 10:13:48 +02:00
Delyan Angelov
230372df09
clipboard: fix unsafe warning on windows (affects v-ui)
2021-02-15 20:09:02 +02:00
Nick Treleaven
c057b45bb1
checker: check argument count for C fn with attribute ( #8728 )
2021-02-15 18:56:26 +02:00
zakuro
2911f03627
checker: reject method that have multi-value type receiver ( #8696 )
2021-02-15 17:55:54 +02:00
zakuro
70a30374b9
parser: cleanup fn_decl ( #8700 )
2021-02-15 17:55:08 +02:00
Lukas Neubert
848295cdea
scanner: do not warn on \' after string interpolation ( #8729 )
2021-02-15 17:54:30 +02:00
Quix
486bf8517f
builtin: fix typo ( #8747 )
2021-02-15 17:54:07 +02:00
Quix
6a21b8cc8b
pg: fix typo ( #8750 )
2021-02-15 17:53:38 +02:00
Quix
35f45b8e5e
glm: fix typo ( #8748 )
2021-02-15 17:53:07 +02:00
Quix
49505d4090
hash.crc32: fix typo ( #8749 )
2021-02-15 17:52:45 +02:00
Quix
64018e6f14
encoding.utf8: fix 'length' typo in two spots ( #8746 )
2021-02-15 17:52:00 +02:00
zakuro
d08a0b5a7c
parser: check not used expression for all exprs in multi-expr ( #8733 )
2021-02-15 17:41:04 +02:00
spaceface
fe007f9b16
gen: fix type_name for sumtype/interface pointers ( #8769 )
2021-02-15 17:35:31 +02:00
AAAA
4213851e22
cli: fix typo ( #8742 )
2021-02-15 17:25:30 +02:00
Nick Treleaven
4a0367a63c
vlib: add [unsafe] tag to more functions: tos, string_from_wide, strings.Builder: write_bytes, free ( #8766 )
2021-02-15 17:15:52 +02:00
Louis Schmieder
4bdbb0cfa8
orm: add type detection of db ( #8756 )
2021-02-15 17:14:39 +02:00
yuyi
a9c2045dbd
cgen: fix var name clash of array/map ( fix #1994 ) ( #8765 )
2021-02-15 15:51:57 +02:00
Nick Treleaven
629d43caf5
checker: warn when using `goto` outside of `unsafe` ( #8741 )
2021-02-15 15:48:24 +02:00
Peter Badida
6781f732f4
gen: fix infinite loop when struct's ref field is pointing to self ( #8632 ) ( #8641 )
2021-02-15 15:43:10 +02:00
penguindark
325aef6d41
gg: add gg.m4, use it in the sokol GLSL examples ( #8755 )
2021-02-15 15:40:28 +02:00
spaceface
e3649ec4d3
all: implement `type_name()` for interfaces too ( #8767 )
2021-02-15 15:29:44 +02:00
zakuro
4e2418e9cf
os: add test for os.file_name ( #8757 )
2021-02-15 07:37:35 +01:00
Nick Treleaven
b07f373433
builtin: make 5 C functions trusted, tweak signatures ( #8730 )
2021-02-14 19:37:32 +01:00
Nick Treleaven
ea803113c3
checker: check `unsafe` V function calls ( #8752 )
2021-02-14 19:31:42 +01:00
zakuro
d3bcd5d305
fmt: keep single line if in struct init ( #8734 )
2021-02-14 19:22:24 +01:00
zakuro
e534b4397d
checker: report correct position for non-bool cond error ( #8735 )
2021-02-14 19:19:41 +01:00
Nick Treleaven
82650ee813
parser: fix parsing attribute after fn prototype with no return type ( #8727 )
2021-02-14 08:05:20 +01:00
zakuro
e4f15605c0
checker: reject void type condition ( #8737 )
2021-02-14 07:33:24 +01:00
Delyan Angelov
3d29f819cf
builder: add markused.mark_used calls to js.v and x64.v
2021-02-13 18:09:04 +02:00
Delyan Angelov
e809264f12
builder,checker: split the unused marking into a new `v.markused` module
2021-02-13 18:02:31 +02:00
Uwe Krüger
374739b804
all: rename `[ref_only]` -> `[heap]` ( #8718 )
2021-02-13 16:52:01 +02:00
Delyan Angelov
2a8d0ddaf5
checker: add os.init_os_args_wide to the -skip-unused whitelist too
2021-02-13 16:33:35 +02:00
Delyan Angelov
60c16313f3
checker: enable `./v -skip-unused self`
2021-02-13 16:08:44 +02:00
Delyan Angelov
eaaac220be
checker: make -skip-unused more conservative to make `v test vlib/builtin` pass
2021-02-13 15:47:17 +02:00
Uwe Krüger
835b3b2b81
sync: simplify `WaitGroup` and `PoolProcessor` and use atomic counters ( #8715 )
2021-02-13 13:52:27 +01:00
Nick Treleaven
d03c1d615a
os: improve `rm` error message ( #8719 )
2021-02-13 13:51:38 +01:00
Delyan Angelov
0b60510c9c
cgen: cleanup generating helper comments with -skip-unused
2021-02-13 10:31:48 +02:00
Ned Palacios
db609a0784
checker: skip checking for invalid fn return type ( #8703 )
2021-02-13 01:21:05 +01:00
Uwe Krüger
40066a5daa
checker: obey [ref_only] tag, allow embedding in other ref struct ( #8707 )
2021-02-13 00:47:37 +01:00
glebbash
aa548f45ea
docs: fix functions in array/map example ( #8695 )
2021-02-12 21:10:54 +02:00
bettafish04
0b777c68c3
net: fix unix sockets ( #8697 )
2021-02-12 20:10:06 +02:00
StunxFS
6b431b18f5
vweb.tmpl: fix a little typo ( #8704 )
2021-02-12 20:06:37 +02:00
Joe Conigliaro
c904c9178d
checker: support ParExpr for trying to take address errors & simplify messages
2021-02-13 02:49:22 +11:00
Delyan Angelov
1675b6f3e0
ci: fix code-formatting job
2021-02-12 15:44:12 +02:00
Joe Conigliaro
5d36a59dd8
checker: fix returning [] from fn which retuns optional array
2021-02-12 22:30:30 +11:00
Alexander Medvednikov
0a03856c83
parser: small c2v fixes
2021-02-12 09:12:26 +01:00
yuyi
67c6f24c84
cgen: format match_expr ( #8692 )
2021-02-12 03:37:31 +01:00
yuyi
3164e29651
all: fix fn_or_for_in mut value (part 1) ( #8671 )
2021-02-12 02:03:11 +02:00
Nick Treleaven
84a16d8684
map: add `move` method ( #8660 )
2021-02-12 02:02:33 +02:00
Larpon
65f2420516
os: fix cp_all mkdir panic ( #8680 )
2021-02-12 01:55:36 +02:00
Nick Treleaven
375efb0953
checker: improve errors for `return` count mismatch ( #8686 )
2021-02-12 01:47:11 +02:00
Joe Conigliaro
317d450723
checker: add error when trying to take address of call expr
2021-02-12 10:39:02 +11:00
Delyan Angelov
8f6fec4364
ci: fix building examples/concurrency/concurrency.v on macos
2021-02-12 01:18:40 +02:00
Delyan Angelov
58393bd3f9
ci: fix unix_test.v on unix != macos
2021-02-12 01:12:42 +02:00
Delyan Angelov
89521584a2
ci: fix unix sockets test on macos
2021-02-11 22:34:38 +02:00
bettafish04
9b4f2edbfa
net: move unix socket code to net.unix and skip net/unix/unix_test.v … ( #8681 )
2021-02-11 18:51:12 +02:00
Delyan Angelov
ea401b1192
ci: `#include <afunix.h>` in vlib/net/net_windows.c.v
2021-02-11 12:45:25 +02:00
Delyan Angelov
578de634fe
sync: move pool related code to `sync.pool`, cleanup, add a README.md
2021-02-11 10:55:23 +02:00
Delyan Angelov
93c1c1cec3
builder: add generated C lines with -stats too
2021-02-11 08:38:09 +02:00
cbracketdash
c636a7080d
rand: add rand.ascii ( #8675 )
2021-02-11 08:32:40 +02:00
bettafish04
d4f6488afd
net: add better unix socket support ( #8651 )
2021-02-11 01:24:15 +01:00
zakuro
f371803a32
cgen: move comp_if_to_ifdef to comptime.v ( #8668 )
2021-02-11 01:22:49 +01:00
Delyan Angelov
de287c0add
builder: add C source code size info on -stats
2021-02-10 19:12:12 +02:00
zakuro
4305ce1493
checker: extract long match branches in c.stmt(), into separate checker functions ( #8666 )
2021-02-10 18:51:41 +02:00
SurmanPP
f2ad6dd4d9
os: fix os.walk, when passing paths ending with path_separator ( #8672 )
2021-02-10 18:48:01 +02:00
Delyan Angelov
4646c414d8
checker: fix -skip-unused with struct inits with default expressions
2021-02-10 18:25:57 +02:00
cbracketdash
eb7009b60a
rand: generate hexadecimal numbers ( #8664 )
2021-02-10 11:01:25 +01:00
yuyi
f2e74bce7a
checker: fix sumtype assign error ( fix #7988 ) ( #8655 )
2021-02-10 10:59:56 +01:00
Alexander Medvednikov
035a163454
json: encode_pretty (p. 2) + tests
2021-02-10 10:17:29 +01:00
Alexander Medvednikov
f67e4ab57c
json: encode_pretty (p. 1)
2021-02-10 10:13:06 +01:00
yuyi
95c3ef3a6a
cgen: minor cleanup in stmt() ( #8659 )
2021-02-09 23:00:43 +01:00
Uwe Krüger
f3c5f24c17
allow `lock` expression to return multiple objects ( #8657 )
2021-02-09 17:09:10 +02:00
Nick Treleaven
d37fb5641f
parser: improve printing of unexpected tokens ( #8654 )
2021-02-09 17:07:30 +02:00
Bobitsmagic
0f92485698
builtin: fix typo in builtin/array.v ( #8658 )
2021-02-09 17:04:47 +02:00
Swastik Baranwal
6de78ecb59
term: implement term.clear() for windows ( #8650 )
2021-02-09 14:25:31 +02:00
Delyan Angelov
5308b63a01
ci: fix the `-cflags "-Werror"` job, by explicit casting to `void**`
2021-02-09 14:22:51 +02:00
Delyan Angelov
d110f0de74
tests: add a regression test for 3d2afcf
2021-02-09 14:11:09 +02:00
Delyan Angelov
3d2afcf02e
cgen: fix gohandle_name generation (use .cname)
2021-02-09 12:55:05 +02:00
spaceface
1bb4be17d8
cgen: remove srwlock definition workaround for tcc on windows ( #8652 )
2021-02-09 12:44:18 +02:00
spaceface
4152c704f3
sokol: remove `.lib` extensions in `#pragma` directives ( #8639 )
...
fixes tcc on windows - this kind of fix has been done several times in the past, and should probably be upstreamed to sokol soon to prevent things from breaking every time we update the headers.
2021-02-09 11:36:01 +02:00
Mohammad Ali Chraghi
86e6b4f926
examples: improve the pg and vweb output ( #8640 )
2021-02-09 11:31:25 +02:00
Alexander Medvednikov
bfee8a528c
cgen: add "case" to c_reserved
2021-02-09 03:49:19 +01:00
bettafish04
1a2ae0aead
net: add basic unix socket support ( #8642 )
2021-02-08 23:48:23 +01:00
Swastik Baranwal
09cff69919
all: allow using aliases as keys in map ( #8589 )
2021-02-08 18:51:05 +01:00
Lukas Neubert
8cb01ba8db
fmt: keep comments between and after imports ( #8637 )
2021-02-08 19:48:48 +02:00
Lukas Neubert
cb1f63f765
parser: replace eat_line_end_comments() with configurable eat_comments() ( #8636 )
2021-02-08 18:16:02 +02:00
Lukas Neubert
5abd49d9bc
cgen: cast default struct field value to correct SumType/interface ( #8619 )
2021-02-08 17:33:05 +02:00
Swastik Baranwal
e2ff26a066
cgen: fix gen of .sort method for `>` operator and improve grammar of error ( #8615 )
2021-02-08 17:19:54 +02:00
Nick Treleaven
e2ff2a5405
parser: deprecate `{var |` struct update ( #8618 )
2021-02-08 17:03:05 +02:00
yuyi
f2100166c7
cgen: minor cleanup in gen_str_for_option ( #8622 )
2021-02-08 17:00:51 +02:00
Nick Treleaven
9e751f72c4
doc, fmt: use `map{key: value}` syntax for map literals ( #8623 )
2021-02-08 16:57:42 +02:00
zakuro
8ae23cd89e
parser: make `v := f(v)' an undefined variable error ( #8634 )
2021-02-08 16:55:01 +02:00
zakuro
e5839effbc
checker/cgen: allow `<<` operator for aliases ( #8561 )
2021-02-08 01:41:47 +01:00
Lukas Neubert
473cd1d416
fmt: single line ternary return ( #8605 )
2021-02-08 00:28:46 +01:00
Uwe Krüger
118ca1240e
all: allow `shared` element types for `struct` and arrays ( #8631 )
2021-02-08 00:28:29 +01:00
Lukas Neubert
7f4c582f1a
fmt: unwrap long infix exprs inside parenthesis if necessary ( #8609 )
2021-02-07 23:10:39 +01:00
Nick Treleaven
ff1aa06455
parser: require ++/-- to be on the same line as the previous token ( #8621 )
2021-02-07 23:10:16 +01:00
yuyi
81e8c3bc1b
cgen: minor optimization in infix_expr ( #8625 )
2021-02-07 17:22:54 +01:00
Larpon
bfd0bd1fb4
builtin: doc chan.v channel stub ( #8577 )
2021-02-07 12:42:24 +02:00
kristof de spiegeleer
2d875260e8
examples: Process examples ( #8598 )
2021-02-07 05:19:05 +01:00
Alexander Medvednikov
a81ee0e94e
tools/fast: measure v.c size and parse/check/cgen steps
2021-02-07 04:48:54 +01:00
zakuro
9f59b04e86
fmt: remove unused selective imports ( #8595 )
2021-02-07 03:58:43 +01:00
Nick Treleaven
cd4f7101f7
parser: support short struct update syntax `{...ident,` ( #8613 )
2021-02-07 03:43:51 +01:00
Nick Treleaven
b92f980274
token: fix Token.str() for punctuation and operators ( #8610 )
2021-02-07 03:40:00 +01:00
Delyan Angelov
d77bb2f606
all: improve -skip-unused, track consts, walk all AST nodes, support tests
2021-02-07 02:51:45 +02:00
Nick Treleaven
f5f65f929f
parser: parse `map{key_expr: val_expr}` ( #8608 )
2021-02-06 22:13:24 +01:00
Lukas Neubert
db0fc8fbc9
fmt: better function call wrapping inside ternary if branches ( #8604 )
...
* fmt: better funcation call wrap in singel line ifs
* tests
* format files
2021-02-06 21:46:52 +01:00
Uwe Krüger
cf230644b6
fmt: enable shared return types ( #8614 )
2021-02-06 21:25:06 +01:00
Uwe Krüger
5343f1374b
all: allow functions to return `shared` object ( #8606 )
2021-02-06 19:41:52 +01:00
zakuro
fe9d062b41
gen: fix bug where unreached defer is executed ( #8594 )
2021-02-06 18:40:39 +02:00
Larpon
de9813233f
gg: support getting system font on Android ( #8611 )
2021-02-06 18:36:43 +02:00
Delyan Angelov
e57b73bcfc
ci: fix the using_comptime_env.vv test (execute only on ubuntu-tcc again)
2021-02-06 13:07:21 +02:00
Swastik Baranwal
9b839b3b7d
cgen: fix gen of `>` operator overloading ( #8600 )
2021-02-06 12:59:20 +02:00
Delyan Angelov
1fcac4098b
tests: use a serial task runner for -skip-unused too
2021-02-06 10:08:59 +02:00
Delyan Angelov
167773dd1c
checker: make -skip-unused process a list of root functions, not just main.main
2021-02-06 09:41:24 +02:00
Larpon
e83c39c81a
builtin: document rest of map.v ( #8578 )
2021-02-06 03:07:42 +01:00
Uwe Krüger
ab279dace7
cgen: support `shared` initialization from call returning optional ( #8593 )
2021-02-06 03:07:05 +01:00
yuyi
1b6efebac7
all: fix map = map2 assignment ( #8581 )
2021-02-06 03:06:34 +01:00
Larpon
57258c2988
builtin: document remaining pub structs in builtin.v ( #8576 )
2021-02-05 21:02:29 +01:00
Larpon
1101533dea
crypto: document rest of rand submodule ( #8580 )
2021-02-05 20:26:34 +02:00
Subhomoy Haldar
9a1da1a97b
rand: move the shuffle function from `arrays` to `rand.util` ( #8587 )
2021-02-05 20:24:38 +02:00
Delyan Angelov
ed6fc79fbe
ci: run the -skip-unused tests on linux (so local testing is easier)
2021-02-05 20:03:24 +02:00
Delyan Angelov
99822e51de
ci: force println_os_executable.vv to have a stable output on all OSes
2021-02-05 20:01:02 +02:00
Larpon
e1052a5ec7
semver: document all pub functions ( #8586 )
2021-02-05 19:57:42 +02:00
Lukas Neubert
58b3a30b47
docs/readmes: format almost all remaining code blocks ( #8590 )
2021-02-05 19:50:28 +02:00
Delyan Angelov
9a7ecf2807
ci: limit the -skip-unused testing to the ubuntu CI jobs for now
2021-02-05 18:41:46 +02:00
Delyan Angelov
a6ecc19040
ci: fix -skip-unused compiler test on windows, using -d no_backtrace
2021-02-05 18:36:57 +02:00
zakuro
6b776e686e
parser: display correct position on boolean expression error ( #8563 )
2021-02-05 16:52:35 +01:00
Larpon
44ab0154b2
builtin: document last of array.v ( #8575 )
2021-02-05 16:51:45 +01:00
zakuro
a94228bb16
checker: make `[] == ArrayAlias([])` an error ( #8562 )
2021-02-05 16:49:40 +01:00
Larpon
e78c30d181
clipboard: add android variant ( #8585 )
2021-02-05 16:49:04 +01:00
Lukas Neubert
9ab1d17cbc
fmt: keep __global in struct declarations ( #8584 )
2021-02-05 16:46:43 +01:00
Delyan Angelov
81789ee106
tests: add vlib/v/tests/skip_unused/
2021-02-05 17:27:00 +02:00
Delyan Angelov
867d96a077
checker: use @METHOD for util.timing_start in Checker.mark_used/1
2021-02-05 16:41:55 +02:00
Delyan Angelov
16dffc7c1d
compiler: move timing_start/timing_measure to util.timing_start/util.timing_measure
2021-02-05 16:34:56 +02:00
Delyan Angelov
25a3873019
parser,checker: support @METHOD, replaced by 'ReceiverType.MethodName'
2021-02-05 16:32:43 +02:00
Delyan Angelov
d30f94507c
checker: enable -skip-unused for more examples
2021-02-05 11:55:40 +02:00
Delyan Angelov
8f160ee3ed
ci: run vfmt over vlib/v/gen/c/fn.v
2021-02-05 11:18:29 +02:00
Delyan Angelov
40fff7b56a
v.pref: support `v -skip-unused run examples/hello_world.v`
2021-02-05 11:12:28 +02:00
Delyan Angelov
80697ec7f3
table: .is_used => .usages (a counter, instead of a boolean flag)
2021-02-05 10:03:17 +02:00
Delyan Angelov
e5c9fcb7e9
ci: fix building vdoc, vls, etc
2021-02-05 09:27:14 +02:00
Alexander Medvednikov
5a183d23a9
cgen: disable the new [if xxx] logic for now
2021-02-05 08:16:16 +01:00
Alexander Medvednikov
1084b43ffb
all: ast walker for marking unused fns
2021-02-05 08:05:35 +01:00
Delyan Angelov
119dfc0bb0
all: support map[f32]string and map[f64]string (float map keys) too ( #8556 )
2021-02-04 23:59:49 +01:00
Alexander Medvednikov
97e36cd97a
parser: fix method name test
2021-02-04 22:25:58 +01:00
Alexander Medvednikov
fdd8c86fdb
parser: make sure methods have names
2021-02-04 22:15:16 +01:00
Ekopalypse
5eef730290
builder: make msvc build if v path contains spaces ( #8552 )
2021-02-04 20:45:59 +01:00
Delyan Angelov
48892a52fa
strings: make valgrind reports for strings builders more usefull ( #8553 )
2021-02-04 20:45:35 +01:00
Louis Schmieder
97c0ef3505
orm: struct field support ( #8517 )
2021-02-04 20:28:33 +01:00
Ekopalypse
856246c858
builder: make repl work if path contains spaces ( #8550 )
2021-02-04 18:18:18 +01:00
Lathanao
a0cbe48977
vweb: fix @include ( #8535 )
2021-02-04 17:07:04 +01:00
yuyi
abde1cd73d
cgen: fix array/map of alias to string ( #8549 )
2021-02-04 17:52:14 +02:00
Subhomoy Haldar
c6552d7780
rand.util: add sample_r and sample_nr ( #8539 )
2021-02-04 14:56:53 +02:00
yuyi
a976876211
v.token: correct some comments, and add some missing comments ( #8542 )
2021-02-04 09:18:38 +02:00
BigBlack
162c42dbe9
ast: fix `new_struct := MyStruct{...(*old_struct)}` ( #8544 )
2021-02-04 09:14:43 +02:00
pancake
27239db427
builder: show file:line when import fails ( #8537 )
2021-02-04 09:09:54 +02:00
Uwe Krüger
112c652ace
cgen: auto initialize `chan` that are struct elements ( #8541 )
2021-02-04 00:07:20 +01:00
Uwe Krüger
f013e65670
checker/cgen: support lock expressions `x := rlock s { s.get() }` ( #8540 )
2021-02-03 23:56:58 +01:00
Uwe Krüger
cee00a3551
cgen: create enclosing block on C side for V `lock` blocks ( #8538 )
2021-02-03 23:25:01 +01:00
Uwe Krüger
2424e2cb02
cgen: fix for `rlock`/`lock` handling ( #8536 )
2021-02-03 17:33:18 +01:00
Nick Treleaven
de37b52d4b
checker: check goto label exists ( #8523 )
2021-02-03 15:20:10 +01:00
Nick Treleaven
82482167ce
vlib: replace all `goto` statements with labelled break ( #8531 )
2021-02-03 15:19:42 +01:00
Swastik Baranwal
7ec116d588
all: only allow defining `==` and `<` and auto generate `!=`, `>`, `>=` and `<=` ( #8520 )
2021-02-03 15:18:38 +01:00
Uwe Krüger
9dcf673216
all: make `lock` and `rlock` dead lock free :-) ( #8534 )
2021-02-03 15:16:52 +01:00
Delyan Angelov
f4b757e47d
examples: add examples/vweb/server_sent_events; implement vweb.sse
2021-02-03 16:03:06 +02:00
Ruofan XU
a73c20916d
checker: refactor and clean up c.check_basic() ( #8508 )
2021-02-03 11:57:06 +02:00
zakuro
4b99d6af95
cgen: fix bug with duplicate defer generation ( #8503 )
2021-02-03 11:40:21 +02:00
yuyi
b40252bd97
checker: merge array_filter_fn_err tests ( #8506 )
2021-02-03 11:27:11 +02:00
yuyi
9bcb57eb1f
checker: merge array_map_fn_err tests ( #8507 )
2021-02-03 11:26:26 +02:00
Lukas Neubert
ea06966fd4
fmt: hide ´[]Type{} instead of []Type´ and ´(f mut Foo)´ warnings ( #8528 )
2021-02-03 11:25:08 +02:00
zakuro
e30e794884
checker: add check for using a private const in another module ( #8501 )
2021-02-03 10:17:13 +02:00
Uwe Krüger
df0520b43a
checker,cgen: make `shared` behave like `mut` inside `lock` - and like non-mut inside `rlock` ( #8526 )
2021-02-03 01:20:19 +02:00
yuyi
91af2418de
ftp: minor optimization in dir() ( #8518 )
2021-02-02 18:51:55 +01:00
yuyi
7875164d91
cgen: add gen_alias_equlity_fn ( #8514 )
2021-02-02 18:37:57 +01:00
Delyan Angelov
02bef1ae2b
vdoc: fix segfault on `v doc -m -f html vlib`
2021-02-02 17:38:32 +02:00
joe-conigliaro
ffedbe4b81
cgen: move cgen from v.gen to v.gen.c ( #8515 )
2021-02-02 15:41:51 +01:00
Daniel Däschle
d477e525bb
checker/gen: fix generic struct init ( #8322 )
2021-02-03 00:42:00 +11:00
Lukas Neubert
58b37519e0
scanner: fix warning for \" after string interpolation ( #8510 )
2021-02-02 14:14:06 +02:00
Uwe Krüger
1de299ad22
cgen: allow `shared` initialization from return values of functions ( #8512 )
2021-02-02 14:13:13 +02:00
Delyan Angelov
17062dc5c8
v.pref: support `-obf` in addition to `-obfuscate`, as described in `v help build`
2021-02-02 12:24:34 +02:00
Lukas Neubert
5aaeac79fa
ci: fix compilation ( #8511 )
2021-02-02 12:06:54 +02:00
Delyan Angelov
d57a9c419d
examples: add net_udp_server_and_client.v
2021-02-02 10:36:56 +02:00
Alexander Medvednikov
2c4674eb42
cgen: obfuscate functions
2021-02-02 09:14:41 +01:00
yuyi
5ec6f7a781
ftp: fix error in dir() ( #8504 )
2021-02-02 08:22:52 +01:00
yuyi
9a2820fa7b
checker: fix pass fixed array of function as argument ( #8502 )
2021-02-02 03:58:54 +01:00
Ruofan XU
a0a33f7ff1
checker: fix map of function as argument and direct call of function in map ( #8494 )
2021-02-02 03:58:32 +01:00
Louis Schmieder
969f19daf4
orm: fix null strings ( #8497 )
2021-02-01 21:44:09 +01:00
Ruofan XU
51f2eb81f4
checker/cgen: fix mut array of fn as argument ( #8469 )
2021-02-01 20:10:24 +01:00
Lukas Neubert
cf1084105c
fmt: allow single line ternary if as function argument ( #8486 )
2021-02-01 20:08:42 +01:00
Nick Treleaven
79e9084f7b
checker: allow `Struct{...expr}` where `expr` is another struct type ( #8495 )
2021-02-01 20:08:25 +01:00
Uwe Krüger
17746561f2
cgen: put `shared` arrays and maps always on heap ( #8496 )
2021-02-01 20:07:01 +01:00
yuyi
4d268d1436
cgen: minor cleanup of gen_fn_decl ( #8474 )
2021-02-01 20:06:34 +01:00
Delyan Angelov
fab7b9d9d9
checker: fix `x := match enumexpr { .case2 { fn1 } .case2 { fn2} }`, where fn1 and fn2 have compatible signature
2021-02-01 21:01:58 +02:00
BigBlack
e3c2604338
cgen: fixed array slice in function, add docs ( #8481 )
2021-02-01 19:11:17 +02:00
Lucas Hernán Tarche
7813ecbb75
gg: add draw_convex_poly/2 and draw_empty_poly/2 methods ( #8487 )
2021-02-01 18:18:23 +02:00
yuyi
1e07173234
cgen: minor cleanup of array_init ( #8477 )
2021-02-01 15:56:55 +01:00
Nick Treleaven
c537578481
checker: ensure `expr` is an lvalue with `Struct{...expr` ( #8489 )
2021-02-01 15:18:03 +01:00
Lukas Neubert
d660f2cc6f
fmt: insert newline after last HashStmt ( #8482 )
2021-02-01 14:50:41 +01:00
yuyi
53a5aad855
cgen: fix fixed array of function ( #8490 )
2021-02-01 14:50:10 +01:00
Lukas Neubert
8755f40430
fmt: keep comments after imports ( #8483 )
2021-02-01 14:45:08 +01:00
Uwe Krüger
44ec9e3ebc
checker/cgen: put `shared` struct always on heap ( #8492 )
2021-02-01 14:39:36 +01:00
Delyan Angelov
5b9a7bf6b3
cgen: support `#flag -DWIN32_FULL`, when you do NOT want WIN32_FULL
2021-02-01 14:40:51 +02:00
Lukas Neubert
43676330ba
fmt: keep braces around @ escaped fields in string interpolation ( #8488 )
2021-02-01 11:04:57 +02:00
Enzo
778b83a132
gen: fix multiple blank param with interface ( #8480 )
2021-01-31 19:44:55 +02:00
spaceface
effa3188dd
cgen: fix type casts to interfaces ( #8476 )
2021-01-31 19:24:33 +02:00
Larpon
d25825df57
all: support compile time `$env('ENV_VAR')` ( #8456 )
2021-01-31 19:22:42 +02:00
Enzo
2945040a67
gen: fix function with multiple blank params ( #8475 )
2021-01-31 16:37:26 +02:00
Nick Treleaven
f992099726
checker: check s.$method(arg) argument is []string ( #8455 )
2021-01-31 15:28:23 +01:00
Alexander Medvednikov
9638013203
gg: fix macos C function definitions
2021-01-31 13:57:06 +01:00
Ruofan XU
ae60ea4ed5
tests: add regression tests for typeof map and array of fns ( #8458 )
2021-01-31 12:20:15 +02:00
Seven Du
09c65163b4
cgen: add a destructor caller for the generated _vcleanup, when using -shared ( #8464 )
2021-01-31 12:10:49 +02:00
Delyan Angelov
5746ac4dd4
vfmt: remove tracing println for match branches
2021-01-31 11:05:49 +02:00
Delyan Angelov
978359a6fc
tests: fix some warnings in preparation for `-W test-self`
2021-01-31 11:05:17 +02:00
Delyan Angelov
e066e83041
stbi: add proper declarations for C.stbi_load etc.
2021-01-31 10:23:43 +02:00
yuyi
2963425995
cgen: fix fn_with_mut_args ( fix #7139 ) ( #8446 )
2021-01-31 02:45:45 +01:00
Nick Treleaven
9c2bd24b4f
tests: add test for s.$method() with T.methods ( #8451 )
2021-01-30 18:35:41 +01:00
BigBlack
c5e7956eb5
checker: fix generic_mutable_arrays in functions ( #8445 )
2021-01-30 18:35:03 +01:00
Nick Treleaven
64d12cdc8d
checker: check number of C function arguments for some cases ( #8444 )
2021-01-30 18:33:36 +01:00
Daniel Däschle
2cadb3e4d8
gen: panic with correct type names ( #8355 )
2021-01-30 18:54:05 +02:00
Nick Treleaven
849bc6c3d8
tests: fix weird CI failure with error details ( #8449 )
2021-01-30 18:53:39 +02:00
Uwe Krüger
9c82eec529
checker: support nested propagation cases `f(g() ?)` ( #8447 )
2021-01-30 16:53:31 +01:00
Nick Treleaven
43c3a3b080
checker: fix compile-time call with string identifier expression ( #8415 )
2021-01-30 15:24:16 +01:00
Uwe Krüger
058f3ba013
sync: rename `m_lock() -> @lock()`, `r_lock() -> @rlock()`, ... ( #8443 )
2021-01-30 15:23:55 +01:00
Subhomoy Haldar
7e3b3a9efc
rand: update byte() ( #8442 )
2021-01-30 14:19:14 +01:00
div72
8c70920695
all: add offsetof ( #8380 )
2021-01-30 12:57:09 +01:00
Nick Treleaven
c0685eeefc
parser: add warning for s.$field.name without brackets ( #8411 )
2021-01-30 12:56:10 +01:00
yuyi
97cb7687a2
cgen: minor cleanup of consts ( #8441 )
2021-01-30 13:35:25 +02:00
Enzo
ced7649bf8
gen: fix `for ... in array` ( #8428 )
2021-01-30 12:27:11 +01:00
Lukas Neubert
a044441224
fmt: keep {} in string interpolation for chained CallExprs ( #8422 )
2021-01-30 11:58:19 +01:00
Lukas Neubert
2774db077d
fmt: keep user choice for newlines in match branches ( #8418 )
2021-01-30 11:57:57 +01:00
yuyi
77b3d40f46
checker: fix `map = {}` ( #8435 )
2021-01-30 11:55:10 +01:00
Uwe Krüger
5e9b528a9d
checker/cgen: support `return` from nested `or` ( #8430 )
2021-01-30 12:46:36 +02:00
yuyi
5af16f38fc
cgen: correct minor typo ( #8438 )
2021-01-30 12:39:44 +02:00
Julia Bogdan Filipchuk
d26ac0f6cb
vfmt: add ability to use vfmt as a filter from stdin to stdout ( #8432 )
2021-01-30 12:38:54 +02:00
Delyan Angelov
7f5d654c3a
all: cleanup redundant `.ends_with(_test.v)` calls
2021-01-30 11:08:52 +02:00
Uwe Krüger
6477748e88
sync/waitgroup: use value mutex and semaphore; remove sync.Waiter ( #8431 )
2021-01-30 11:08:43 +02:00
zakuro
391d62bca5
fmt: remove duplicated imports ( #8433 )
2021-01-30 11:04:36 +02:00
Delyan Angelov
760b4c37b9
all: support _test.vv files (to test _test.v errors/checks too)
2021-01-30 10:42:18 +02:00
Delyan Angelov
5564a2c1da
tests: fix filter_in_map_test.v (it did not have a `test_` function in it)
2021-01-30 10:29:48 +02:00
Delyan Angelov
948f63b507
checker,builder: rename `details:` to `Details:`
2021-01-30 10:20:09 +02:00
Delyan Angelov
30e0c478d7
checker: add error for _test.v file without test_ functions
2021-01-30 10:19:29 +02:00
Lukas Neubert
974cac2037
fmt: relocate two methods; minor cleanup ( #8423 )
2021-01-29 23:15:26 +02:00
Swastik Baranwal
e03ece2a4b
checker: check the fn decl for anon fns too ( #7529 )
2021-01-29 23:11:05 +02:00
Uwe Krüger
4a955d9c54
sync: don't force `Mutex` and `Semaphore` to be reference ( #8331 )
2021-01-29 20:52:14 +02:00
Lukas Neubert
93acc929f7
fmt: keep lines of comments inside an array ( #8420 )
2021-01-29 20:19:14 +02:00
zakuro
2a32dac40d
checker: fix panic when calling generic function with too few args ( #8416 )
2021-01-29 20:14:22 +02:00
Delyan Angelov
8398e2f448
ci: fix -usecache for programs using thirdparty C libs
2021-01-29 19:44:33 +02:00
Delyan Angelov
9f31829e0c
ci: fix failing clipboard_test.v on macos
2021-01-29 18:59:44 +02:00
Delyan Angelov
2326a3a1e1
builder: small cleanup, use .dump_c_options in Builder.cc_linux_cross/0 too
2021-01-29 18:30:40 +02:00
Delyan Angelov
4d180171ba
builder: implement `-dump-c-flags flags.txt`
2021-01-29 18:05:14 +02:00
Delyan Angelov
49b01549da
v.vcache: improve tracing of vcache usage
2021-01-29 18:05:13 +02:00
yuyi
26c06a56b7
checker: fix array_insert_or_prepend_short_struct_init ( #8397 )
2021-01-29 14:53:14 +01:00
yuyi
56c4a36cd4
cgen: fix match_in_if_expression ( #8407 )
2021-01-29 14:51:17 +01:00
Swastik Baranwal
c4758c21c6
cgen: println(none) => `<none>` ( #8404 )
2021-01-29 14:50:48 +01:00
Louis Schmieder
4a6642b79e
vweb: fix vweb upload ( #8392 )
2021-01-29 14:48:52 +01:00
zakuro
f5242890b8
fmt: keep multiline selective import ( #8412 )
2021-01-29 14:48:28 +01:00
yuyi
ddcbc4440b
cgen: fix array_sort_by_references ( fix #8390 ) ( #8403 )
2021-01-29 12:20:28 +02:00
Lukas Neubert
e47c13903b
fmt: keep newlines between toplevel stmts ( #8383 )
2021-01-29 12:17:59 +02:00
Larpon
85c5df23cf
gg: add window_size() function ( #8409 )
2021-01-29 12:11:03 +02:00
Subhomoy Haldar
c5a18812e2
rand: move constants from rand.util to a new module rand.constants ( #8408 )
2021-01-29 11:57:30 +02:00
Nick Treleaven
d012f2713b
checker: improve errors with compile-time field access ( #8373 )
2021-01-29 00:45:00 +01:00
spaceface
4aee997689
checker: make implementing an interface with another interface an error ( #8398 )
2021-01-29 00:41:59 +01:00
Uwe Krüger
adb646a1d2
sync: update benchmark results for Windows ( #8399 )
2021-01-29 00:41:46 +01:00
Alexander Medvednikov
608a4ccccd
fmt: fix a bug with an empty module in consts
2021-01-29 00:26:57 +01:00
yuyi
1be7cc14d3
checker: check duplicate of a const name ( #8396 )
2021-01-28 18:34:55 +01:00
yuyi
684d2e6dbf
checker: merge ambiguous_function_call tests ( #8388 )
2021-01-28 15:53:54 +02:00
Delyan Angelov
4fcd8d8a98
scanner: fix `' "$var", "$another"'` where `r"`, was treated as start of a raw string
2021-01-28 15:38:42 +02:00
Delyan Angelov
079fbffaf5
scanner: implement s.trace/2
2021-01-28 15:21:19 +02:00
Uwe Krüger
0afe36e153
checker: fix receiver pos for single letter type error message ( #8393 )
2021-01-28 15:20:07 +02:00
Delyan Angelov
1a29719f16
fontstash: fix snek on big sur, with -d use_truetype
2021-01-28 12:26:48 +02:00
Lukas Neubert
75d85403a6
fmt: better ternary concat wrapping ( #8379 )
2021-01-28 11:23:48 +01:00
Alexander Medvednikov
d86cb67eda
checker: add a test for the single letter receiver
2021-01-28 11:13:51 +01:00
Alexander Medvednikov
68dab101d9
checker: fix one letter receiver panic
2021-01-28 11:05:37 +01:00
Alexander Medvednikov
36e75e5208
Revert "parser: fix panic when single letter receiver parsed ( #8381 )"
...
This reverts commit 93b0d8ca64
.
2021-01-28 10:59:04 +01:00
Daniel Däschle
93b0d8ca64
parser: fix panic when single letter receiver parsed ( #8381 )
2021-01-28 10:56:43 +01:00
Tim Basel
5fc7eadd8b
cgen: fix short struct init with `mut` ( #8384 )
2021-01-28 10:05:09 +02:00
Subhomoy Haldar
5a1f3cd394
math.fractions: fix minor typo ( #8386 )
2021-01-28 10:02:41 +02:00
Delyan Angelov
dceb63b9df
cgen: fix implicit the optional return value to have .ok = true, in anon `fn()?{}`
2021-01-28 02:26:02 +02:00
Delyan Angelov
242d7d0fc0
tools: improve error diagnostic for `v up` and `v self`. Make `v self` more robust.
2021-01-27 23:58:13 +02:00
zakuro
8162396783
checker: deny multi-value in a singe-value context ( #8328 )
2021-01-27 23:10:51 +02:00
shadowninja55
f4baa3f39c
gg: add draw_square, draw_empty_square, and set_pixel ( #8375 )
2021-01-27 22:39:11 +02:00
shadowninja55
fccd4f98d5
fixed offset ( #8376 )
2021-01-27 19:39:53 +02:00
yuyi
d1ab22d45f
checker: fix array append short struct init ( #8362 )
2021-01-27 13:55:53 +01:00
Enzo
2b30c48770
checker: fix ctdefine check in non-main modules ( #8332 )
2021-01-27 13:54:33 +01:00
StunxFS
cb885d30b4
scanner: fix typo ( #8345 )
2021-01-27 13:53:41 +01:00
Swastik Baranwal
17921f4171
checker: add checks for optional selector_expr ( #8330 )
2021-01-27 13:53:20 +01:00
Nick Treleaven
58a76344cb
checker: avoid SelectorExpr filter on Ident unless it's a generic type name ( #8357 )
2021-01-27 13:52:52 +01:00
spaceface
e233911a7b
term.ui: native Windows console implementation ( #8359 )
2021-01-27 13:52:39 +01:00
Lukas Neubert
2ada7b730e
sqlite: create_table(): rename rows param to columns ( #8361 )
2021-01-27 13:52:27 +01:00
yuyi
7a5722c885
parser: check assign_stmt of undefined variable ( #8366 )
2021-01-27 13:52:10 +01:00
Delyan Angelov
2d86c50d49
ci: fix autobahn integration tests job
2021-01-26 20:12:12 +02:00
Delyan Angelov
dd96852515
ci: fix compilation of term.ui examples on windows
2021-01-26 19:26:05 +02:00
Delyan Angelov
4e2b908f21
ci: fix `os` compilation on windows
2021-01-26 17:41:27 +02:00
Delyan Angelov
e5a84719ca
all: require calling `optfn() ?` / `optfn() or {...}` for `fn optfn() ? {}`
2021-01-26 16:43:17 +02:00
Subhomoy Haldar
97103f680a
rand: separate rand.util and rand.seed submodules ( #8353 )
2021-01-26 15:55:09 +02:00
spaceface
5f2b2df546
checker: don't disallow defining methods on interfaces ( #8335 )
2021-01-26 11:56:17 +01:00
zakuro
3959ba5751
checker: make a calling no-body function a checker error ( #8265 )
2021-01-26 11:19:48 +01:00
Lukas Neubert
2007dbc7b5
fmt: put the opening brace on a new line again for infix ( #8336 )
2021-01-26 11:19:32 +01:00
Lukas Neubert
3790bd67e3
fmt: minor cleanup of sql_expr ( #8340 )
2021-01-26 10:36:46 +01:00
zakuro
22847d1ec3
fmt: assert (a == b) -> assert a == b ( #8351 )
2021-01-26 10:36:21 +01:00
Daniel Däschle
7bb9c0e7b3
checker: fix multi generic args ( #8347 )
2021-01-26 09:37:48 +02:00
Major Taylor
69c37402d4
backtrace: fix tcc backtrace windows compilation error ( #8348 )
2021-01-26 08:26:54 +02:00
Lukas Neubert
c6f98afaba
fmt: minor cleanup of return_stmt ( #8341 )
2021-01-25 23:22:14 +01:00
Delyan Angelov
4d0dab826b
ci: fix vlib/dl/example/use_test.v in windows-tcc
2021-01-25 21:19:15 +02:00
Delyan Angelov
dbaccd4272
vfmt: shorten `main.const_name` to just `const_name`
2021-01-25 20:57:33 +02:00
Delyan Angelov
ea11488339
tests: make test more tolerant to windows low precision timer default interval
2021-01-25 20:04:29 +02:00
Delyan Angelov
e0ed224a8d
Revert "net: prevent udp_test.v from running on windows without -d network"
...
This reverts commit 3526bc3d19
.
2021-01-25 19:08:45 +02:00
Delyan Angelov
3526bc3d19
net: prevent udp_test.v from running on windows without -d network
2021-01-25 19:02:19 +02:00
spaceface
daff085033
checker: fix treating C structs with capitalized fields as embeds ( #8343 )
2021-01-25 18:47:14 +02:00
Delyan Angelov
cb04e6dccc
tests: move is_nodejs_working() to jsgen_test.v
2021-01-25 18:46:28 +02:00
yuyi
3199b982a9
cgen: minor cleanup of comp_for in comptime.v ( #8337 )
2021-01-25 17:08:48 +01:00
Daniel Däschle
006a11454f
cgen: fix generic type $else $if ( #8339 )
2021-01-25 17:08:02 +01:00
Swastik Baranwal
21ba0470af
builtin: fix truncating of EOL on windows terminal ( #8338 )
2021-01-25 17:51:36 +02:00
Delyan Angelov
a5b10b5539
parser: improve the error message for unexpected keywords
2021-01-25 15:29:07 +02:00
yuyi
444d49da75
cgen: minor cleanup of gen_assert_stmt ( #8334 )
2021-01-25 15:28:34 +02:00
Nick Treleaven
02d8ede94d
cgen: fix `$if T !is` ( #8311 )
2021-01-25 14:25:52 +01:00
Lukas Neubert
b2f2f387dc
fmt: cleanup and expand tests for ternary if ( #8333 )
2021-01-25 14:22:08 +01:00
yuyi
1c9950c84a
cgen: fix map_complex_high_order_fixed_array ( #8329 )
2021-01-25 14:40:53 +02:00
Delyan Angelov
965ae9cb91
ci: fix formatting in .md files too
2021-01-25 13:20:18 +02:00
Delyan Angelov
728344ff65
ci: fix `v test-cleancode`
2021-01-25 12:55:01 +02:00
Delyan Angelov
94fd3ff431
checker: remove the 'in module main cannot be declared public' error/warning
2021-01-25 12:55:00 +02:00
Delyan Angelov
d3d301d8ff
gen: use externally_visible too for VV_EXPORTED_SYMBOL when ARM is defined
2021-01-25 12:40:28 +02:00
Adelar da Silva Queiróz
334554ffb9
strconv: fix typo ( #8318 )
2021-01-24 23:18:40 +01:00
yuyi
d3327ba50f
cgen: fix for_mut_val_in_map_fixed_array ( #8314 )
2021-01-24 23:18:11 +01:00
Alexander Medvednikov
3dae3f786d
gg: Context.resize()
2021-01-24 22:27:27 +01:00
spaceface
4be45e8d02
checker: add mutability checks for interface fields; add tests ( #8312 )
2021-01-24 22:11:17 +01:00
Uwe Krüger
815104e5d0
parser: parse `-1` and `-13.3` as number literals ( #8321 )
2021-01-24 22:09:51 +01:00
Lukas Neubert
997f56a3dc
fmt: better newline handling in block comments ( #8325 )
2021-01-24 22:08:24 +01:00
Daniel Däschle
750738aa12
cgen: fix optional sum types ( #8319 )
2021-01-24 20:56:44 +01:00
Emily Hudson
2e695a8e8f
cgen: free temporary channel arrays ( #8324 )
2021-01-24 20:02:17 +01:00
Alexander Medvednikov
29d6e40f29
all: vfmt (new const rule)
2021-01-24 10:54:27 +01:00
Alexander Medvednikov
12ff1c2702
doc: document the new const rule
2021-01-24 10:23:52 +01:00
Alexander Medvednikov
80e6b090ea
checker: remove an obsolete const test
2021-01-24 10:17:36 +01:00
Alexander Medvednikov
2238bf9a83
fmt: use new const rule in tests
2021-01-24 10:12:49 +01:00
Alexander Medvednikov
8bcb6c10cc
checker: remove duplicate const error; fmt: force full path to consts
2021-01-24 10:01:13 +01:00
fnetX (aka fralix)
69e6ba7a64
math: small typo in math.fractions ( #8298 )
2021-01-24 09:37:00 +01:00
Lukas Neubert
522eac200f
fmt: keep `arr << if x {} else {}` on a single line ( #8289 )
2021-01-24 08:02:35 +01:00
Uwe Krüger
79b4b0e6c8
parser: assure explicit `map` init contains no parameters ( #8299 )
2021-01-24 01:06:43 +02:00
Adelar da Silva Queiróz
1f99d1e025
strconv: some corrections of typos ( #8302 )
2021-01-24 00:00:31 +02:00
Uwe Krüger
1ea5cedd03
parser/cgen: fix explicit array/map shared/reference initializers ( #8307 )
2021-01-23 23:54:57 +02:00
Daniel Däschle
35432c5e92
gen: fix generic multi return ( #8303 )
2021-01-23 23:41:32 +02:00
Swastik Baranwal
8a59ffb4b7
cgen: allow `==` to be user defined if `!=` is auto generated and vice versa ( #8286 )
2021-01-23 16:59:39 +01:00
Tomas Hellström
39e5f6e9df
x.websocket: websocket server fix and bring back server autobahn ( #8291 )
2021-01-23 16:56:38 +01:00
Delyan Angelov
4065a0327a
gen: fix autogeneration of .str() methods for sumtypes that have child types with custom .str() methods
2021-01-23 17:22:19 +02:00
Uwe Krüger
74115fe70a
parser: auto-import `sync` when `shared` objects are used ( #8294 )
2021-01-23 16:03:21 +01:00
Larpon
bce6a35e8f
crypto: add missing documentation to all pub functions ( #8251 )
2021-01-23 13:33:49 +01:00
Uwe Krüger
38880b23eb
checker: allow `a[i]` for `shared` arrays outside `unsafe` ( #8292 )
2021-01-23 13:33:32 +01:00
yuyi
b8857baa98
parser: fix map_init position ( #8293 )
2021-01-23 13:33:19 +01:00
R cqls
749d6133a1
v.pkgconfig: handle paths to local .pc files too (needed for homebrew) ( #8290 )
2021-01-23 13:09:53 +02:00
Alexander Medvednikov
ba2a15c9d7
parser: fix const check
2021-01-23 10:46:00 +01:00
yuyi
5ee3fecf60
checker: check for mut val in immutable obj ( #8285 )
2021-01-23 10:40:17 +01:00
Delyan Angelov
d4f6f5eec4
sokol,fontstash: move f_d_use_freetype.v to vlib/fontstash/a_d_use_freetype.v
2021-01-23 11:39:17 +02:00
Alexander Medvednikov
c21f57ff59
os: vfmt os.v
2021-01-23 10:33:53 +01:00
Alexander Medvednikov
45cc3ec664
sokol: remove an absolute import
2021-01-23 10:32:00 +01:00
Alexander Medvednikov
d991712b3c
gg: native rendering mode on macOS
2021-01-23 10:25:43 +01:00
Delyan Angelov
a3908414e4
pref: fix handling of _d_custom.v files, use it in vlib/sokol/f/f_d_use_freetype.v
2021-01-23 11:21:56 +02:00
Lukas Neubert
8b61891348
fmt: smarter if condition wrapping ( #8201 )
2021-01-23 10:33:22 +02:00
zakuro
9812230847
checker: make the no-body main function a checker error ( #8211 )
2021-01-23 10:30:26 +02:00
Daniel Däschle
c5c7addb88
checker: improve infer generic ( #8281 )
2021-01-23 10:19:08 +02:00
spaceface
c2d501e8a9
all: implement interface fields ( #8259 )
2021-01-23 08:57:17 +02:00
Louis Schmieder
e06e8b10cd
orm: fix empty struct and simplify ( #8246 )
2021-01-22 23:28:26 +01:00
Daniel Däschle
dbf84520f1
all: update assoc syntax ( #8274 )
2021-01-22 23:24:48 +01:00
Tomas Hellström
970c03987d
ci: temporarily comment the server tests for autobahn ( #8272 )
2021-01-22 22:30:53 +02:00
Larpon
981b42125f
encoding: document all of the `encoding.base64` module ( #8276 )
2021-01-22 22:29:05 +02:00
Emeric MARTINEAU
081e3c46b4
cli: allow flag to be set multi time ( #8256 )
2021-01-22 19:03:02 +02:00
Larpon
f2c6735d92
crypto: make Digest.sum() and Digest.write() private in md5 and sha1 ( #8270 )
2021-01-22 14:14:31 +01:00
Daniel Däschle
500ebf77e4
all: implement multiple generics ( #8231 )
2021-01-22 13:49:56 +01:00
Delyan Angelov
b10b76bb0d
parser: remove the 'non-string keys are work in progress' warning
2021-01-22 12:25:17 +02:00
Alexander Medvednikov
46cdf4f1ff
0.2.2
2021-01-22 10:39:44 +01:00
Alexander Medvednikov
43d56cb883
string: update the test
2021-01-22 10:33:06 +01:00
Alexander Medvednikov
216fea1eb3
string: remove left/right (one way!)
2021-01-22 10:26:07 +01:00
Alexander Medvednikov
5815d96418
Revert "builtin: make string.(left|right) pub ( #8245 )"
...
This reverts commit 820e684313
.
2021-01-22 10:09:31 +01:00
Nick Treleaven
72168cd6bc
parser: support `mut:` section in the interface methods, and a mut interface fn modifier ( #8092 )
2021-01-22 10:02:28 +02:00
zakuro
1b09954622
parser: improve the position of mut receiver warning / error ( #8240 )
2021-01-22 09:38:37 +02:00
Uwe Krüger
925ffd76f4
sync/channels: expose `ch.closed` as `bool` pseudo attribute ( #8244 )
2021-01-22 09:37:29 +02:00
zakuro
820e684313
builtin: make string.(left|right) pub ( #8245 )
2021-01-22 09:35:32 +02:00
yuyi
d44c632d11
cgen: fix innermost value of map fixed array ( fix #8214 ) ( #8247 )
2021-01-22 09:32:56 +02:00
zakuro
522d875489
checker: make it an error, to use ident outside of anon fn ( #8232 )
2021-01-22 09:24:49 +02:00
shadowninja55
a569dc17e8
gg: allow fonts loaded with $embed_file() to be used ( #8263 )
2021-01-21 23:07:47 +02:00
Daniel Däschle
3ee7bc960f
checker/gen: fix smartcast pointer sumtype ( #8260 )
2021-01-21 22:31:25 +02:00
Louis Schmieder
6b1956fb60
checker: fix warning at comptime call ( #8248 )
2021-01-21 21:36:11 +02:00
Louis Schmieder
0d204603d1
gen: fix generic comp time if ( #8254 )
2021-01-21 21:17:44 +02:00
Louis Schmieder
d8c94cd1fd
vweb: make multipart Content-Type header detection case-insensitive ( #8255 )
2021-01-21 21:16:25 +02:00
Daniel Däschle
6c24e9ba84
tests: automatically add an .out file if not found, with VAUTOFIX=1 ( #8250 )
2021-01-21 15:48:57 +02:00
yuyi
f399c17e3d
parser: check for_in mut key ( #8235 )
2021-01-21 12:46:15 +01:00
Larpon
62c2168b0b
clipboard: document all pub functions, adhere to vdoc style ( #8243 )
2021-01-21 12:45:59 +01:00
yuyi
59c3e98c16
cgen: fix complex map_fixed_array ( #8209 )
2021-01-21 12:45:37 +01:00
yuyi
f13ba3a9a8
cgen: fix for_in_mut_val for maps ( #8221 )
2021-01-21 12:44:22 +01:00
Uwe Krüger
3ecbf78707
cgen: support explicit array handling even in [direct_array_access] functions ( #8241 )
2021-01-21 12:43:54 +01:00
Daniel Däschle
c6d6690064
checker: fix if expr infix ( #8215 )
...
* checker: fix if expr infix
* remove debugger code
* fmt
* remove debug
* add test cases
2021-01-21 12:42:24 +01:00
zakuro
29b3077ea1
checker: make negative literal index a checker error ( #8242 )
2021-01-21 13:27:16 +02:00
zakuro
f413c92f2f
v.util: fix bug of mod_path_to_full_name ( #8236 )
2021-01-21 13:24:32 +02:00
Louis Schmieder
4045ec1ca8
checker: remove vweb unused vars ( #8180 )
2021-01-21 11:09:19 +01:00
Louis Schmieder
f7c251f8f3
vweb: add multipart/form-data parser and file upload ( #8160 )
2021-01-21 11:08:51 +01:00
Louis Schmieder
b44ec4921f
vweb: make vweb async ( #8095 )
2021-01-21 11:08:38 +01:00
zakuro
0c249fa040
parser: improve anon fn pos ( #8210 )
2021-01-21 11:01:40 +01:00
Markus F.X.J. Oberhumer
d97543605b
pkgconfig: add support for Fedora and CentOS Linux. ( #8237 )
2021-01-21 11:41:16 +02:00
yuyi
242c5760f1
array: fix array_clone ( fix #8220 ) ( #8238 )
2021-01-21 10:17:00 +01:00
spaceface
f059a9e96c
builtin: fix sorting arrays of primitives ( #8204 )
2021-01-20 23:19:35 +02:00
yuyi
190bb38087
checker: check fixed array size ( #8224 )
2021-01-20 23:17:49 +02:00
Larpon
c212b4d180
cli: add missing documentation to all pub functionality ( #8226 )
2021-01-20 23:15:48 +02:00
Enzo
55efd8309a
parser: fix parsing interface methods with varargs ( #8229 )
2021-01-20 23:15:02 +02:00
Delyan Angelov
94b5e47ba8
ci: fix compilation of projects cloned inside the main repository
2021-01-20 22:44:18 +02:00
Delyan Angelov
071549baae
v.util: fix an out of bounds panic in mod_path_to_full_name/2
2021-01-20 18:22:58 +02:00
Delyan Angelov
d92f5c55ba
net: use mut and refs as receivers consistently ( #8205 )
2021-01-20 11:11:01 +01:00
Alexander Medvednikov
158aefc37f
sqlite: create_table()
2021-01-20 09:30:26 +01:00
Alexander Medvednikov
57af8570fe
tests: another pointer struct test
2021-01-20 09:24:12 +01:00
joe-conigliaro
97ebecc5f4
usecache: get all tests running with -usecache enabled by default (p.1) ( #7699 )
2021-01-20 06:04:59 +01:00
Delyan Angelov
b3a4f746a2
clipboard: use a nicer error when X11/Xlib.h is missing
2021-01-19 20:47:09 +02:00
yuyi
985ef52872
cgen: fix child struct's default values not assigned ( #8202 )
2021-01-19 17:10:22 +01:00
Delyan Angelov
d9532eda30
checker: error on a.slice(x,y) outside `builtin`
2021-01-19 15:55:52 +02:00
Tim Basel
129eee346b
fmt: keep single empty lines ( #8189 )
2021-01-19 14:49:40 +01:00
Ruofan XU
103901a5cb
example/test: add a binary search tree example and test ( #8145 )
2021-01-19 15:18:38 +02:00
Uwe Krüger
5067046538
parser: support `x = a[k] ?` propagation for arrays and maps ( #8199 )
2021-01-19 14:46:47 +02:00
yuyi
15cc1cd884
cgen: fix high order map assignment ( #8198 )
2021-01-19 14:31:24 +02:00
Lukas Neubert
ca70d815b6
fmt: move StructDecl comments handling into functions ( #8191 )
2021-01-19 10:43:48 +01:00
Tomas Hellström
da93666cd8
x.websocket: bring back shift operators ( #8197 )
2021-01-19 10:42:59 +01:00
Delyan Angelov
85bcfdd636
checker: handle `a[i] or { statements expr }` the same as the other or blocks
2021-01-19 09:28:34 +02:00
Delyan Angelov
24d1ec2714
vfmt: support `a[i] or { panic(err) }` too
2021-01-19 08:42:56 +02:00
Delyan Angelov
7037965973
parser: cleanup unused `p.os_from_string`
2021-01-19 08:33:03 +02:00
Lukas Neubert
b44c08aff0
fmt: wrap match branch expressions ( #8190 )
2021-01-19 06:16:42 +01:00
Uwe Krüger
b74690cbec
builtin, checker, cgen: implement `x = a[k] or { ... }` for maps and arrays ( #8193 )
2021-01-19 06:06:57 +01:00
yuyi
a65b73d3e4
cgen: fix for_in_fixed_array ( fix #8186 ) ( #8195 )
2021-01-19 05:50:23 +01:00
Tomas Hellström
874885c87d
x.websocket: fix weird shift operator bug in clang -prod flag ( #8192 )
2021-01-19 05:49:37 +01:00
Uwe Krüger
5cc591b2b6
all: support generic `chan` ( #8188 )
2021-01-18 18:37:45 +01:00
Swastik Baranwal
6f1ae65811
parser: add a warning for only else branch in match ( #8185 )
2021-01-18 18:31:36 +02:00
Delyan Angelov
f375418847
parser: remove forgotten eprintln statement
2021-01-18 14:57:10 +02:00
Lukas Neubert
ac2c3847af
all: update copyright to 2019-2021 ( #8029 )
2021-01-18 13:20:06 +01:00
Louis Schmieder
38881e4b20
vweb: Implement chunked encoding transfer ( #8179 )
2021-01-18 13:04:21 +01:00
yuyi
5ddb70940e
cgen: fix map_fixed_arrays str error ( fix #8170 ) ( #8178 )
2021-01-18 10:34:29 +01:00
Delyan Angelov
17266ecb07
tools: support cmd/tools/.disable_autorecompilation in `v up` and `v self` too
2021-01-18 09:33:33 +02:00
Delyan Angelov
72790cda83
v.util: support cmd/tools/.disable_autorecompilation
2021-01-18 08:43:20 +02:00
yuyi
6c87c25ef1
cgen: fix `for _,mut j in arr` for fixed arrays ( fix #8163 ) ( #8167 )
2021-01-18 06:05:38 +01:00
yuyi
73fd4396c3
parser: fix fixed array using const size ( fix #8144 ) ( #8161 )
2021-01-18 06:03:03 +01:00
Lukas Neubert
16c9cbce7c
fmt: correctly increase f.line_len for write_indent ( #8174 )
2021-01-18 06:02:29 +01:00
Delyan Angelov
2677fcdf0c
time: add some tolerance for windows's minimum 1ms sleep resolution
2021-01-17 19:16:08 +02:00
Delyan Angelov
3ee78dc961
term: add term.colorize/2, use it in the tests. Support ConEmuANSI = ON too.
2021-01-17 19:09:29 +02:00
Delyan Angelov
75af639721
checker: allow ptr++/ptr-- in unsafe{}, for any kind of pointer, except voidptr
2021-01-17 18:09:25 +02:00
BigBlack
28ed4da1ce
cgen: fix `array_slice(*a, 0, a.len)` C error, generated for `a[..a.len]`, for a `mut a []int` ( #8168 )
2021-01-17 17:22:23 +02:00
Swastik Baranwal
334b66b311
checker/cgen: add checks and fix cgen for [typedef] for C structs ( #8169 )
2021-01-17 17:18:07 +02:00
Uwe Krüger
e4850cd6dd
cgen: fix `for` iteration over fixed array literal ( #8159 )
2021-01-17 10:44:15 +01:00
Alexander Medvednikov
a008c8254c
parser: comptime: update tmpl_path
2021-01-17 06:42:21 +01:00
Alexander Medvednikov
ac8a7ac901
parser: bootstrap the new struct init check
2021-01-17 06:30:30 +01:00
Alexander Medvednikov
2b058edc98
checker: do not require ref field init with update expr
2021-01-17 06:24:03 +01:00
Nick Treleaven
df39e7001c
parser: support `module:` for immutable private struct fields ( #8140 )
2021-01-17 05:39:44 +01:00
Tim Basel
d16721e5b8
cli: remove flags.get_*_or variants ( #8102 )
2021-01-17 05:33:39 +01:00
Larpon
512f62b7a1
android: enable custom (e)println output via android log system ( #8135 )
2021-01-17 05:32:59 +01:00
yuyi
9376c57a51
cgen: fix for_in_mut_val ( fix #8087 ) ( #8129 )
2021-01-17 05:32:34 +01:00
Lukas Neubert
3e44816e44
fmt: minor code cleanup ( #8147 )
2021-01-17 05:32:10 +01:00
Nick Treleaven
5185a59ac7
parser: use Parser.builtin_mod instead of checking p.mod ( #8137 )
2021-01-17 05:31:41 +01:00
Nick Treleaven
8ee67d1c1c
parser: disallow indexing on next line at top-level ( #8128 )
2021-01-17 05:30:41 +01:00
Lukas Neubert
371730f8a8
fmt: correct indent for StructDecl multi line default exprs ( #8148 )
2021-01-17 05:01:55 +01:00
Swastik Baranwal
ef627c9d21
checker: improve message and positioning for operator overloading ( #8133 )
2021-01-17 03:37:44 +01:00
penguindark
ee9f9c9d81
x.ttf: add README, some improvements ( #8157 )
2021-01-17 03:11:47 +01:00
Delyan Angelov
5ae55731b9
embed: move to `v.embed_file`, fix CI failing test
2021-01-16 20:03:07 +02:00
Delyan Angelov
d258733752
pkgconfig: add more .pc sample files. `abc,xyz` => `abc xyz` in `Requires:`
2021-01-16 18:03:01 +02:00
Delyan Angelov
5c3ef588c3
live: move to vlib/v/live
2021-01-16 15:05:01 +02:00
Delyan Angelov
8571d9395b
preludes: move to vlib/v/preludes
2021-01-16 14:43:24 +02:00
Delyan Angelov
80d1aadc50
ci: fix check-markdown for vlib/v/pkgconfig/README.md
2021-01-16 14:34:14 +02:00
Delyan Angelov
1a8a1ceb0a
pkgconfig,flag: add tests to pkgconfig, fix bugs and links, improve flag.usage()
2021-01-16 12:04:31 +02:00
Daniel Däschle
53941c4a0a
fmt: fix if cond break readability ( #8132 )
2021-01-16 02:12:17 +01:00
Uwe Krüger
2f7a66386e
docs: document `go` with handle and `wait()` ( #8142 )
2021-01-15 23:40:26 +02:00
penguindark
1d1fda9522
x.ttf: fix for the MSVC `get_string` pointer issue ( #8139 )
...
* fix tab and spaces in indentation
* fix for glyph not found error
* fix for get_String in ttf.v pointer problems with MSVC
* avoid second return in get_string
* move from u32 to u64 to byteptr in 64 bit systems
2021-01-15 20:40:56 +02:00
Delyan Angelov
c4c4b9c7b1
gen,checker: implement g.trace/2 and c.trace/2, similar to p.trace/2
2021-01-15 20:28:53 +02:00
Delyan Angelov
263fb7d7a8
checker: fix `instance.cb_field(mut arg)`
2021-01-15 20:28:42 +02:00
Uwe Krüger
1c6fe83408
parser: fix parsing of `go` call expression ( #8138 )
2021-01-15 19:47:49 +02:00
Ruofan XU
5de287a6e7
tests: add test of sumtype-based binary tree ( #8121 )
2021-01-15 15:10:30 +02:00
Uwe Krüger
8d014d4646
sync: allow `go` routine join with return value ( #8125 )
2021-01-15 13:45:26 +01:00
Delyan Angelov
995f27a7c0
builtin,os: use more precise C. declarations for C.fread, C.fwrite and C.qsort
2021-01-15 12:15:31 +02:00
BigBlack
80008a40e2
fix fixed_array slice ommit high_value ( #8025 )
2021-01-15 10:28:20 +01:00
Lukas Neubert
57dd511c9d
fmt: move all exprs and stmts to their own methods ( #8107 )
2021-01-15 10:26:33 +01:00
yuyi
0945efebf1
cgen: fix anon_fn_call ( #8120 )
2021-01-15 10:25:30 +01:00
yuyi
c6099df418
cgen: fix c struct str method ( #8117 )
2021-01-15 07:51:28 +01:00
Lukas Neubert
20c80db426
fmt: move comments related methods to extra file ( #8028 )
2021-01-15 07:51:07 +01:00
Swastik Baranwal
0ca36aafe2
cgen: allow assignment operators for type aliases ( #8086 )
2021-01-15 02:27:19 +01:00
yuyi
aeddd5b559
string: minor optimization ( fix #8100 ) ( #8106 )
2021-01-15 02:26:06 +01:00
Nick Treleaven
c80cc917c7
checker: check casting struct -> interface; disallow casting struct -> interface pointer ( #8110 )
2021-01-15 01:20:58 +01:00
zakuro
c39f0a7cb7
ast: add str for AssertStmt ( #8021 )
2021-01-15 00:17:26 +01:00
Nick Treleaven
127503c77d
checker: disallow indexing a voidptr ( #8109 )
2021-01-14 20:51:43 +02:00
Nick Treleaven
890fb2d09d
checker: show signature for interface method on error ( #8111 )
2021-01-14 20:50:06 +02:00
Larpon
f73500f2fe
all: add support for the `x := $embed_file('v.png')` compile time call ( #8048 )
2021-01-14 16:20:11 +02:00
Delyan Angelov
9003ea7ca3
builtin: fix a warning for `-d debug_realloc`
2021-01-14 12:28:49 +02:00
Delyan Angelov
ca5f88eb7d
builtin: implement `-d debug_realloc`
2021-01-14 11:41:52 +02:00
Delyan Angelov
adf084eeed
cgen: fix address violations for `return error(abc)`, reduce leaks in `os`
2021-01-14 04:58:26 +02:00
yuyi
a2efb5319d
all: change `[1,2,3]!!` to `[1,2,3]!` ( #8101 )
2021-01-14 03:51:13 +01:00
zakuro
c8bcee9639
ast: add str for comment ( #8019 )
2021-01-14 02:21:27 +01:00
zakuro
fdf5f5003b
ast: add str for ArrayInit ( #8022 )
2021-01-14 02:21:19 +01:00
Nick Treleaven
0f2a770b9c
checker: improve errors for interface method compatibility ( #8097 )
2021-01-13 23:44:29 +01:00
zakuro
47536df2d0
table: remove nr_dims from Array ( #8053 )
2021-01-13 23:43:19 +01:00
yuyi
1d28c4de2a
cgen: fix multi fixed arrays with default init ( fix #8038 ) ( #8064 )
2021-01-13 22:57:33 +02:00
Delyan Angelov
0d25091afd
tests: fix random color mismatches in the CI
2021-01-13 21:27:30 +02:00
Delyan Angelov
349eb95a28
time: comment .local() in time_windows.c.v too
2021-01-13 21:27:30 +02:00
Lukas Neubert
8a8978fb01
fmt: keep same line comments after arr.sort() in vsh files ( #8026 )
2021-01-13 20:10:17 +02:00
Daniel Däschle
2030875c0a
gen: fix go call with generic function ( #8093 )
2021-01-13 17:35:50 +02:00
Nick Treleaven
a1245de25b
gen: fix interface method call name that is a C reserved word ( #8091 )
2021-01-13 16:37:47 +02:00
crthpl
70ad49e186
time: complete doc ( #8070 )
2021-01-13 16:30:54 +02:00
zakuro
204cc5fb01
ast: add case for Import in `fn (node Stmt) str()`
2021-01-13 15:56:48 +02:00
zakuro
4923048d95
ast: add case for ConstDecl in `fn (node Stmt) str()` ( #8073 )
2021-01-13 15:54:41 +02:00
Ruofan XU
245ed9160a
gen: fix `mut arr [3]int` as a fn argument ( #8085 )
2021-01-13 15:52:46 +02:00
Lukas Neubert
219486f0a5
fmt: cleanup `'` and `"` quotes handling ( #8082 )
2021-01-13 11:09:03 +02:00
Daniel Däschle
a22982d662
tests: colorize failing tests, improve layout ( #8066 )
2021-01-13 11:07:12 +02:00
zakuro
4cd50ed566
scanner: remove debug_tokens ( #8078 )
2021-01-13 08:33:37 +01:00
yuyi
ae592299dc
cgen: fix fixed arrays literal eq ( #8079 )
2021-01-13 08:32:41 +01:00
yuyi
7458b699d0
fmt: change `[1,2,3]!!` to `[1,2,3]!` ( #8081 )
2021-01-13 08:32:17 +01:00
Nick Treleaven
ac85257ea0
parser: fix sizeof(mod.Type), fix checking sizeof expression ( #8065 )
2021-01-13 06:13:39 +01:00
yuyi
dd6febf6fa
cgen: fix gen_array_sort() ( #8077 )
2021-01-13 06:12:22 +01:00
zakuro
254df0ca62
fmt: improve string quotes ( #8075 )
2021-01-13 06:05:27 +01:00
zakuro
3e3d45b2b1
parser: improve array init warning ( #8024 )
2021-01-13 06:03:23 +01:00
zakuro
e8ab79205f
ast: add str for Module ( #8072 )
2021-01-13 06:00:53 +01:00
Swastik Baranwal
1e853b0efc
cgen: implement argument operator overloading ( #8067 )
2021-01-13 03:31:14 +01:00
Lukas Neubert
0e490766df
fmt: do not move single line block comments to previous line ( #8046 )
2021-01-13 03:30:24 +01:00
yuyi
03a0534483
all: change fixed array init from `[1,2,3]!!` to `[1,2,3]!` ( #8068 )
2021-01-13 03:28:53 +01:00
Delyan Angelov
ef18fb837c
net.urllib: workaround an autofree bug for `if cond && opt() {`
2021-01-12 16:29:04 +02:00
Daniel Däschle
3289dff7ff
checker: require explicit return none ( #8060 )
2021-01-12 11:43:55 +01:00
yuyi
33976246c8
cgen: format the generated c code of arrays map and filter ( #8016 )
2021-01-12 04:39:09 +01:00
zakuro
33694665f0
fmt: align each contiguous field of struct. not the whole. ( #7981 )
2021-01-12 04:38:43 +01:00
Swastik Baranwal
82a5300044
cgen: allow sort with`<` and `>` op overloading ( #8042 )
2021-01-12 04:38:12 +01:00
Swastik Baranwal
5a1699dec2
checker: add more checks for operator overloading ( #8030 )
2021-01-12 04:37:20 +01:00
yuyi
1559e72d0d
cgen: add gen_fixed_array_equality_fn ( #8006 )
2021-01-12 01:35:18 +01:00
penguindark
55e3e50b9b
ttf: improvement on not found glyphs ( #8050 )
2021-01-12 00:49:58 +01:00
Uwe Krüger
5f95dd54bd
builtin: rename `any_*` -> `*_literal` - 2. part ( #8032 )
2021-01-11 22:58:15 +01:00
Uwe Krüger
91f87c03cf
all: rename `any_*` -> `*_literal` - 1. part ( #8031 )
2021-01-11 22:20:16 +01:00
Lukas Neubert
5d6e9f7bf9
fmt: fix rare extra tab after a SumType ( #8035 )
2021-01-11 22:19:42 +01:00
yuyi
72317975fc
cgen: minor cleanup of gen_assert_stmt() ( #8018 )
2021-01-11 09:05:15 +01:00
Tomas Hellström
cc17f145c5
websocket: make compile with autofree ( #8023 )
2021-01-11 09:03:10 +01:00
yuyi
a1c67232d0
checker: fix duplicate variable name ( fix #265 ) ( #7982 )
2021-01-10 21:41:29 +01:00
yuyi
39bb6f0491
array: fix array of multi filter/map in one assignment ( fix #7858 ) ( #7976 )
2021-01-10 21:08:45 +01:00
zakuro
c1b1ec9005
fmt: keep same line comment in array init ( #7980 )
2021-01-10 21:06:48 +01:00
zakuro
2103d9a6c4
fmt: keep new line at both ends of block comment ( #8003 )
2021-01-10 21:06:29 +01:00
Swastik Baranwal
8f4238e76a
time: use operator overloading for `>=` and `<=` ( #8009 )
2021-01-10 21:05:05 +01:00
Lukas Neubert
a8378273a5
fmt: fix too many \n if file has only imports ( #8012 )
2021-01-10 21:19:31 +02:00
yuyi
a97ed55a09
checker: check for an unknown struct name ( fix #8007 ) ( #8010 )
2021-01-10 21:16:53 +02:00
Delyan Angelov
692a718428
examples: use os.resource_abs_path, so `v run examples/ttf_font/example_ttf.v` works
2021-01-10 20:36:50 +02:00
penguindark
c067cc0357
vlib: add a TTF font loader and render in `x.ttf` ( #7995 )
2021-01-10 20:14:41 +02:00
Delyan Angelov
a0b8191a94
net: cleanup unused `time` imports in tests
2021-01-10 18:59:06 +02:00
Larpon
93ad595ffb
vet: add suggestions for function documentation ( #7890 )
2021-01-10 18:48:39 +02:00
Lukas Neubert
d96a1b8a5f
fmt: intelligent newlines for trailing arg syntax ( #7748 )
2021-01-10 17:39:37 +01:00
Delyan Angelov
722a603222
cgen: fix os.args initialization, so that `const x = os.args[0]` works
2021-01-10 15:17:24 +02:00
Swastik Baranwal
0081e5740d
checker: only allow `!=` and `==` for enum ( #7985 )
2021-01-10 12:26:31 +02:00
Swastik Baranwal
1f5255c2bb
cgen: implement `>=` and `<=` ( #7991 )
2021-01-10 12:24:46 +02:00
Lukas Neubert
73bd63d69d
token: remove // from comment kind string ( #7992 )
2021-01-10 12:19:59 +02:00
Lukas Neubert
31753f581f
ast: remove redundant InfixExpr.str() ( #7993 )
2021-01-10 12:19:14 +02:00
pancake
0e016baa34
v.pkgconfig: support Requires.private; handle double spaces in pkgconfig files ( #7994 )
2021-01-10 12:14:41 +02:00
yuyi
704f38d87f
parser: fix multi fixed arrays init ( #7996 )
2021-01-10 06:58:31 +01:00
Daniel Däschle
a8dd13f086
parser: change array decompose syntax ( #7965 )
2021-01-09 22:48:23 +01:00
Lukas Neubert
e79695e8fc
fmt: keep comments after call_expr in vscript ( #7990 )
2021-01-09 22:47:33 +01:00
Delyan Angelov
561d4f84b3
tests: remove tmp files on OK live_test.v run
2021-01-09 20:56:02 +02:00
zakuro
407da09acf
ast: add str for EnumDecl ( #7977 )
2021-01-09 19:49:27 +01:00
Delyan Angelov
aa37382e8d
tools: let `v fmt` use VTMP too, stabilise `v test-cleancode`
2021-01-09 20:41:15 +02:00
Larpon
8f315d226b
vvet: move to own subdir, prepare richer suggestions ( #7989 )
2021-01-09 16:11:49 +02:00
Delyan Angelov
7545ed4121
ci: fix union field warnings in `clipboard` module
2021-01-09 11:37:40 +02:00
Don Alfons Nisnoni
d645e45752
mysql: add more documentation ( #7846 )
2021-01-09 10:40:21 +02:00
Ned Palacios
256ddcee1f
v.ast: add walker submodule for ast walking ( #7775 )
2021-01-09 05:36:38 +01:00
Uwe Krüger
eff757d0a1
cgen: fix address violations for error propagation ( #7972 )
2021-01-09 02:43:48 +01:00
Daniel Däschle
bbac95a438
parser: error on recursive struct ( #7964 )
2021-01-09 01:33:36 +01:00
Nick Treleaven
141b0cb882
checker: fix warning & allow assigning to a union field without unsafe ( #7970 )
2021-01-09 01:32:33 +01:00
zakuro
8d3069f643
parser: avoid value receiver ( #7975 )
2021-01-09 01:32:08 +01:00
Delyan Angelov
dff36a9947
cgen: fix small g.is_autofree && [manualfree] problem
2021-01-08 23:24:26 +02:00
Uwe Krüger
29c2240aef
fmt: enable `or` block for `ch <- x` ( #7969 )
2021-01-08 21:39:21 +01:00
Daniel Däschle
687b152318
gen: fix generation of comptime if T is ( #7971 )
2021-01-08 19:39:58 +02:00
Uwe Krüger
cbe7740d97
fmt: do not generate `import` statements for auto imports ( #7966 )
2021-01-08 17:42:40 +01:00
Swastik Baranwal
9291fb5e0c
checker: disallow comparison between enum and int ( #7886 )
2021-01-08 17:41:52 +01:00
Delyan Angelov
46a5c487c1
parser,fmt: implement `[manualfree] module abc` for opting out *all* fns in a given .v from autofree
2021-01-08 17:24:42 +02:00
Delyan Angelov
083dc23db8
gen: implement a `[manualfree]` tag, for functions, that want to do their own memory management
2021-01-08 16:22:27 +02:00
Hitalo de Jesus do Rosário Souza
cad4c5ee37
gx: add .rgba8(), .bgra8(), .abgr8() methods to gx.Color ( #7911 )
2021-01-08 13:40:03 +02:00
yuyi
a481c1785b
log: fix log_to_file ( #7955 )
2021-01-08 12:26:37 +02:00
yuyi
828120a918
checker: check unknown generic type ( #7954 )
2021-01-08 07:04:06 +01:00
Alexander Medvednikov
0998cbaaba
vweb: fix routing test
2021-01-08 05:59:23 +01:00
Alexander Medvednikov
1b07710ab3
vweb: make html() return Result
2021-01-08 05:05:29 +01:00
Alexander Medvednikov
352cf91ba2
vweb: remove `return vweb.Result{}` everywhere
2021-01-08 04:57:02 +01:00
Alexander Medvednikov
e3f8d448c1
all: [noinit] struct attribute
2021-01-08 04:49:16 +01:00
Daniel Däschle
1ce93536d0
checker: fix panic in generic methods ( #7944 )
2021-01-08 00:50:59 +01:00
Lukas Neubert
653121bad9
fmt: test bin2v output formatting ( #7926 )
2021-01-07 21:36:59 +01:00
Daniel Däschle
88d18f3303
checker: smartcast in for loops ( #7942 )
2021-01-07 21:35:32 +01:00
zakuro
226c918bdd
cli: make execute_help pub ( #7938 )
2021-01-07 20:33:15 +01:00
Nick Treleaven
cbefe6c32f
parser: warn about old use of `typeof` ( #7923 )
2021-01-07 20:32:02 +01:00
zakuro
a2add15558
ast: add params info to str of FnDecl ( #7933 )
2021-01-07 20:25:55 +01:00
Larpon
41e9a769e9
doc: fix README embedding ( #7929 )
2021-01-07 20:25:29 +01:00
zakuro
af1d28dee7
ast: add str for StructDecl ( #7934 )
2021-01-07 20:25:04 +01:00
yuyi
ad79d55a5c
ftp: fix an error ( #7930 )
2021-01-07 20:21:47 +01:00
yuyi
2ad2d68d7c
json: fix decoding of null map/array ( #7936 )
2021-01-07 20:21:22 +01:00
Daniel Däschle
085085a2b9
parser: fix sumtype match with array type ( #7939 )
2021-01-07 20:12:35 +01:00
Alexander Medvednikov
15ba53be21
checker: handle different pointer levels
2021-01-07 07:36:11 +01:00
Delyan Angelov
9593ad20f9
v.util: extend launch_tool with auto recompilation of a folder with several .v files too
2021-01-06 23:48:38 +02:00
Uwe Krüger
ffd753abdc
all: implement `ch <- x or {...}` and `ch <- x ?` ( #7928 )
2021-01-06 21:19:40 +01:00
Larpon
30a2f125ef
doc: add comment example support ( #7924 )
2021-01-06 19:43:43 +01:00
Hitalo de Jesus do Rosário Souza
ea4981df90
vweb.tmpl: update README.md with @js directive ( #7791 )
2021-01-06 20:05:32 +02:00
Daniel Däschle
a8e4d1df40
cgen: fix match comparing with ident of type string ( #7921 )
2021-01-06 20:03:50 +02:00
Larpon
dcc8310bd0
builtin: fix comment examples in int.v ( #7902 )
2021-01-06 20:02:04 +02:00
Daniel Däschle
9025c3528f
all: implement comptime if for generic type `$if T is string {` ( #7901 )
2021-01-06 19:58:53 +02:00
yuyi
f751271e4e
ftp: fix error of ftp.connect() (fix parts of #7914 ) ( #7915 )
2021-01-06 19:53:25 +02:00
Daniel Däschle
8a0fc2e3c2
parser: proper error when declaring struct embedding at the wrong pos ( #7920 )
2021-01-06 15:46:36 +01:00
Tomas Hellström
f9a873736e
x.websocket: server broadcast plus examples ( #7922 )
2021-01-06 15:43:54 +01:00
Daniel Däschle
42e60b8e27
vweb: fix array.last usage ( #7905 )
2021-01-06 01:24:36 +01:00
Larpon
e219f954d8
builtin: document all functions in float.v ( #7904 )
2021-01-05 23:01:10 +01:00
Alexander Medvednikov
5c4c4354b1
byte: more tests
2021-01-05 19:34:42 +01:00
Alexander Medvednikov
3722e16073
builtin: fix byte.str() (part 2)
2021-01-05 19:26:50 +01:00
Nick Treleaven
7a6b160d63
checker: fix indexing a type alias instance ( #7889 )
2021-01-05 19:17:18 +01:00
Alexander Medvednikov
5a70eba8e1
all: byte.str() => byte.ascii_str()
2021-01-05 19:14:37 +01:00
Larpon
fdb6f1ab50
builtin: int.v workaround vfmt bug ( #7899 )
2021-01-05 20:09:20 +02:00
Nick Treleaven
8fc33bc27d
checker: warn when casting number or a voidptr to reference type outside unsafe ( #7900 )
2021-01-05 20:07:45 +02:00
Alexander Medvednikov
3e04dfc79f
builtin: fix byte.str() (part 1)
2021-01-05 18:59:51 +01:00
Delyan Angelov
95431cf6b0
builtin: fix the comment example in byte.str_escaped()
2021-01-05 18:22:17 +02:00
yuyi
10e7045bee
cgen: fix array/fixed_array_rune_str ( #7881 )
2021-01-05 18:16:55 +02:00
Daniel Däschle
c137a79666
checker: check if $if left is selector expr ( #7897 )
2021-01-05 18:14:55 +02:00
Larpon
9b9cab92f0
builtin: document all functions in int.v ( #7896 )
2021-01-05 17:45:36 +02:00
yuyi
9d9ca0ab5e
builder: auto cleanup xxx.def generated by tcc on windows ( #7878 )
2021-01-05 17:07:07 +02:00
Nick Treleaven
3203a124b2
checker: warn when casting between reference types outside of `unsafe` ( #7892 )
2021-01-05 17:02:04 +02:00
Lukas Neubert
eaba21d81a
fmt: keep the shebang header in vsh files ( #7893 )
2021-01-05 16:14:16 +02:00
Daniel Däschle
5841d5d8e1
all: implement basic comptime field selector ( #7888 )
2021-01-05 16:11:43 +02:00
zakuro
e19277352b
cli: add Command.setup() ( #7850 )
2021-01-05 13:25:25 +02:00
Swastik Baranwal
7c290a7fe8
time: use operator overloading ( #7882 )
2021-01-05 12:43:34 +02:00
zakuro
5c1981379e
parser: fix a bug when using some types like map in generic methods ( #7872 )
2021-01-05 02:59:36 +01:00
Nick Treleaven
2fc50a4045
cgen: fix 32-bit voidptr for map key ( #7759 )
2021-01-05 02:59:01 +01:00
zakuro
3dae44db73
checker: do not allow empty enums ( #7848 )
2021-01-05 01:46:32 +01:00
Nick Treleaven
c0e56d10c3
parser: add errors for invalid anonymous function ( #7786 )
2021-01-05 01:32:24 +01:00
Daniel Däschle
9f74be4cf6
vweb: route to index dynamically ( #7782 )
2021-01-05 01:30:27 +01:00
zakuro
a7a8e659f6
fmt: keep generic type in method call ( #7874 )
2021-01-05 01:29:58 +01:00
spaceface
efb80bdffd
all: implement iterators in for loops ( #7867 )
2021-01-05 01:06:44 +01:00
Ned Palacios
82162b8ff8
cgen: interface fix + add more interface tests ( #7776 )
2021-01-04 21:54:13 +02:00
Nick Treleaven
040b923665
checker: warn when accessing `union` fields outside `unsafe` ( #7869 )
2021-01-04 21:44:37 +02:00
Daniel Däschle
7c9fb73b3f
vfmt: fix comments before ...f in Abc{...f} ( #7870 )
2021-01-04 21:01:35 +02:00
Uwe Krüger
bf904c2f82
checker, cgen: allow using literals as `int` and `f64` for sum types ( #7864 )
2021-01-04 20:48:13 +02:00
Daniel Däschle
164d7bf5fb
parser: struct updating syntax with `Abc{...oldabc newfield: val}` ( #7865 )
2021-01-04 20:19:03 +02:00
clubby789
0ab6a8cd01
os: add a `posix_set_permission_bit` function ( #7754 )
2021-01-04 19:57:17 +02:00
yuyi
46d311dcc4
generic: fix return multi array generic ( fix #7727 #7753 ) ( #7855 )
2021-01-04 18:40:53 +02:00
Don Alfons Nisnoni
7533ffa48f
mysql: add README.md ( #7824 )
2021-01-04 18:37:10 +02:00
yuyi
52521554ce
time: fix parse_iso8601 on windows ( #7853 )
2021-01-04 18:26:21 +02:00
Nick Treleaven
b9c6011602
parser: support casting to a pointer to array ( #7861 )
2021-01-04 18:22:04 +02:00
Delyan Angelov
22085041f1
strconv: implement strconv.format_int(n, radix) and strconv.format_uint(n,radix)
2021-01-04 16:02:13 +02:00
Delyan Angelov
3a357d9718
gg: add examples/gg/stars.v
2021-01-04 12:19:05 +02:00
Swastik Baranwal
21d5db43af
cgen: do not generate `!=` and `==` for C types ( #7856 )
2021-01-04 08:57:31 +01:00
Daniel Däschle
43adbf4b66
cgen: fix filter in map ( #7844 )
2021-01-04 01:04:53 +01:00
Alexander Medvednikov
baae302894
cc: use -g instead of -g3
2021-01-04 00:15:27 +01:00
Delyan Angelov
f2bfda4989
ci: skip test_utf8_wide_char on windows with msvc
2021-01-04 00:16:31 +02:00
Uwe Krüger
4a25c2bb6f
types: rename `any_*`, `untyped *` -> `* literal` ( #7845 )
2021-01-04 00:11:09 +02:00
Delyan Angelov
9b43b6833b
ci: fix clipboard_test.v on windows
2021-01-03 23:46:08 +02:00
Delyan Angelov
760de7c811
ci: use more reliable asserts for test_utf8_wide_char
2021-01-03 22:15:18 +02:00
Delyan Angelov
d86304b7d0
v.table: use the user readable names inside type_to_str_using_aliases for `any_int` and `any_float`
2021-01-03 22:15:18 +02:00
zakuro
dd516858d4
fmt: align struct field comments ( #7632 )
2021-01-03 21:10:25 +01:00