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
Delyan Angelov
ff1156cddd
ci: run `VAUTOFIX=1 ./v vlib/v/compiler_errors_test.v` to fix ci failures
2021-01-03 19:03:20 +02:00
Delyan Angelov
745a7f8d8f
ci: run vfmt over checker.v and types.v
2021-01-03 19:02:33 +02:00
Delyan Angelov
c84d1841ea
tests: implement `VAUTOFIX=1 ./v vlib/v/compiler_errors_test.v`
2021-01-03 19:00:34 +02:00
Joe Conigliaro
70b921c49d
all: change any_int & any_flt display name
2021-01-04 03:20:52 +11:00
Alexander Medvednikov
89bbbe0ec0
vweb: vfmt vweb.v
2021-01-03 17:03:18 +01:00
penguindark
443ae1d76e
regex: fix a bug in find and find_all ( #7839 )
2021-01-03 16:59:00 +01:00
Enzo
9332f7cac2
checker: allow `map` method name ( #7834 )
2021-01-03 16:57:29 +01:00
yuyi
443bf44031
tests: fix ci error in vtest-fixed ( fix #7827 ) ( #7830 )
2021-01-03 16:38:28 +01:00
Enzo
22e54e6703
fmt: fix formatting array decomposition ( #7835 )
2021-01-03 16:19:43 +01:00
Swastik Baranwal
9033099676
cgen: implement overriding of `!=` and `==` ( #7837 )
2021-01-03 16:19:02 +01:00
StunxFS
b7f83e2f50
checker: more errors for illegal referencing ( #7755 )
2021-01-03 15:56:15 +01:00
Nick Treleaven
38e0aa350d
checker: support non-string map.keys method ( #7760 )
2021-01-03 15:55:06 +01:00
Enzo
529f46d808
checker: don't panic on non-array decomposition ( #7836 )
2021-01-03 15:45:39 +01:00
zakuro
91a1a2877b
fmt: add a test for struct embed ( #7831 )
2021-01-03 15:41:19 +01:00
yuyi
60b3658e6f
gen: fix str_gen_test.v ( #7826 )
2021-01-03 15:40:47 +01:00
penguindark
681ff3cc0d
regex: bug fix on .* cases ( #7823 )
2021-01-03 01:33:34 +01:00
Swastik Baranwal
dee3bbffe9
cgen: support .str() for maps with non string keys ( #7806 )
2021-01-02 20:25:46 +02:00
Alexander Medvednikov
fc6d45b2d7
fmt: fix mut_pos in structs with embeds
2021-01-02 19:24:12 +01:00
zakuro
b3de003302
fmt: fix broken formatting in fn struct fields ( #7794 )
2021-01-02 16:36:31 +01:00
zakuro
6bd35505a2
parser: fix error when using imported types in short fn signature ( #7795 )
2021-01-02 15:09:54 +02:00
Don Alfons Nisnoni
e943d03298
mysql: migrate connection flags to enum instead of const, fix example ( #7803 )
2021-01-02 15:09:20 +02:00
yuyi
7f776bfd29
utf8: fix utf8_test ( #7804 )
2021-01-02 14:55:21 +02:00
Delyan Angelov
c1e0e01f8f
vweb: simplify the `[post] pub fn` no routing fix check
2021-01-02 13:47:54 +02:00
Delyan Angelov
d912ff165b
ci: fix failing vweb test, increase timeout for vweb_test_server.v, add VWEB_LOGFILE
2021-01-02 13:33:26 +02:00
yuyi
01e098aa77
vrepl: fix v repl on Windows ( #7798 )
2021-01-02 12:17:39 +01:00
Louis Schmieder
f7135979f5
vweb: fixed req type without path ( #7792 )
2021-01-01 21:57:45 +01:00
Alexander Medvednikov
7496c74f7e
vweb: add [post] test
2021-01-01 21:29:17 +01:00
Nick Treleaven
0a069dee79
gen: support non-string map equality and speed it up ( #7682 )
2021-01-01 20:54:49 +01:00
Alexander Medvednikov
0c77bdf8f6
tutorials: fix blog code
2021-01-01 20:38:22 +01:00
Ned Palacios
40b8d9ca3d
checker: fix infer_fn_type for generic methods ( #7767 )
2021-01-01 17:33:23 +01:00
Daniel Däschle
ac22fe998a
vweb: default init methods ( #7779 )
2021-01-01 17:24:54 +01:00
Nick Treleaven
9243e06dba
parser: allow integer and rune keys for map literal ( #7756 )
2021-01-01 17:23:32 +01:00
Swastik Baranwal
24b18f05c4
cgen: implement > and < for structs ( #7774 )
2021-01-01 14:54:32 +01:00
Nick Treleaven
d15d13674c
parser: parse non-identifier expressions for sizeof too ( #7781 )
2021-01-01 15:38:11 +02:00
Daniel Däschle
5ae3637d27
checker: revert embedded methods fix ( #7780 )
2021-01-01 14:36:07 +01:00
clubby789
9ac237d9c0
match: implement exhaustive match for bool values ( #7761 )
2021-01-01 13:28:23 +02:00
zakuro
73f41f9a2a
scanner: remove unicode operator ( #7766 )
2021-01-01 13:05:28 +02:00
spaceface
480d78de2e
examples/2048: make tiles have rounded corners ( #7763 )
2021-01-01 13:04:51 +02:00
yuyi
b6136f9f8f
clipboard: fix `to_wide()` in clipboard_windows.c.v ( #7768 )
2021-01-01 11:07:58 +02:00
clubby789
bf7da14ba1
cgen: make char literals wide ( #7769 )
2021-01-01 11:06:09 +02:00
Joe Conigliaro
8700080c4a
checker: fix struct embed with overriden method
2021-01-01 09:50:00 +11:00
Joe Conigliaro
e9f9f27e49
checker: fix formatting in tests/web_routing_checks.out
2021-01-01 08:01:00 +11:00
Joe Conigliaro
63afd26c8c
cgen: merge method to write multi return types
2021-01-01 07:45:03 +11:00
yuyi
c3dafad7ef
generics: implement method generics ( fix #7638 ) ( #7732 )
2020-12-31 18:00:22 +01:00
Alexander Medvednikov
2bc9ee4d88
vweb: more updates
2020-12-31 17:47:20 +01:00
Alexander Medvednikov
2533c706ae
vweb: migrate all tests and examples to the new syntax
2020-12-31 17:22:47 +01:00
Alexander Medvednikov
3ffdcd8910
vweb: embed context
2020-12-31 17:07:27 +01:00
zakuro
1fb6710c89
build: remove `v build file.v` ( #7695 )
2020-12-31 15:24:55 +01:00
Alexander Medvednikov
f7b3ed2f4a
cc: hide a print behind -v
2020-12-31 14:24:34 +01:00
Uwe Krüger
74ea5ac99f
checker: check reference return to be really reference ( #7739 )
2020-12-31 12:42:22 +01:00
Swastik Baranwal
a9ab79d301
checker: ban any_int/any_float outside buitlin ( #7675 )
2020-12-31 12:41:30 +01:00
clubby789
3e44393152
x64: optimize mov <reg>, 0 ( #7733 )
2020-12-31 12:40:09 +01:00
Emily Hudson
bf9b0c6345
compiler: add `[console]` attribute for main function to force console subsystem on windows ( #7721 )
2020-12-31 12:38:55 +01:00
Swastik Baranwal
a834f33661
checker: add checks for operator overloading ( #7737 )
2020-12-31 12:38:10 +01:00
Ned Palacios
5597925d58
parser: separate SelectorExpr if name is on another line ( #7700 )
2020-12-31 12:37:11 +01:00
Joe Conigliaro
b2bd2c9337
cgen: make multi return decl order consistant & use typedefs. closes #7728
2020-12-31 21:55:21 +11:00
lydiandy
20f507651e
v.ast: remove unused path and expr fields in Module ( #7625 )
2020-12-31 12:17:59 +02:00
Bakul Shah
45495c3ebb
clipboard: fix test on freebsd ( #7735 )
2020-12-31 11:34:46 +02:00
yuyi
7ce3c5e206
os: change os.mv/2 return type to `?` ( #7738 )
2020-12-31 11:33:39 +02:00
Ryan Prior
64e7c54884
v.util: accomodate reproducible build environments like guix, by not recompiling cmd/tools when mtime < 1024 ( #7702 )
2020-12-31 10:31:38 +02:00
Alicia Woitte
9f3dd6e18f
cli: fix unused callback in test_if_subcommands_parse_args ( #7731 )
2020-12-31 10:16:05 +02:00
Joe Conigliaro
3e655d6bf6
cgen: fix multi return auto str methods. closes #7726
2020-12-31 10:21:02 +11:00
Daniel Däschle
9a31744255
cgen: fix embed generic field access & method call ( #7725 )
2020-12-30 23:49:02 +01:00
Daniel Däschle
b4c5fa8ca0
cgen: fix embed field access from reference ( #7724 )
2020-12-30 21:50:58 +01:00
Daniel Däschle
3ee3c8b3ed
parser: proper error on fn decl in script mode ( #7680 )
2020-12-30 21:18:36 +02:00
Daniel Däschle
e4edc5925a
parser: embed always public and mutable ( #7722 )
2020-12-30 21:17:48 +02:00
Daniel Däschle
b8af81240a
cgen: fix struct embedding method when receiver is ptr ( #7710 )
2020-12-30 20:44:01 +02:00
StunxFS
13cd7e88ef
checker: error taking the address of a boolean literal ( #7716 )
2020-12-30 17:21:15 +01:00
Delyan Angelov
b4f02adc32
os: add os.execve/3 (extracted from unix_spawn_process); use os.execvp/2 in v.util.launch_tool/3
2020-12-30 18:14:03 +02:00
Larpon
c943c8a16e
readline: move get_prompt_offset back to _linux.c.v ( #7714 )
2020-12-30 17:09:07 +01:00
Larpon
7872b8d911
semver: add input information in error and panic output ( #7712 )
2020-12-30 17:07:21 +01:00
Larpon
b1f16533b1
readline: add missing documentation, fix documentation format, add README.md ( #7683 )
2020-12-30 15:09:13 +02:00
Alexander Medvednikov
9976641be0
fmt: fix a space in const decl
2020-12-30 02:24:38 +01:00
Alexander Medvednikov
ad78875a8c
parser: allow `const x = 0` consts outside of const blocks
2020-12-30 02:15:44 +01:00
Alexander Medvednikov
e26a690975
0.2.1
2020-12-29 21:24:33 +01:00
zakuro
b28b41d069
v run: pass all args after file.v only to script args, do not process them as v flags ( #7672 )
2020-12-29 21:16:20 +02:00
yuyi
f6d64c74c2
cgen: fix minor typos in map_fn_ptrs ( #7679 )
2020-12-29 21:02:28 +02:00
yuyi
27db4b4c23
cgen: minor cleanup of cgen.v ( #7688 )
2020-12-29 20:57:34 +02:00
ka-weihe
2c65c5c61a
ci: sanitize compiler for tests ( #7685 )
2020-12-29 20:27:57 +02:00
Delyan Angelov
81fd49642a
net: restore back the blocking TcpConn.read_line() method for simplicity
2020-12-29 17:51:16 +02:00
joe-conigliaro
02965e753e
all: re-implement variadics using arrays & implement array decomposition to varg ( #7689 )
2020-12-29 16:14:08 +01:00
Delyan Angelov
6cf3b96a37
ci: fix .out files after 40ce18f
2020-12-29 16:10:55 +02:00
Delyan Angelov
17e0a65611
net: add support for `-d trace_tcp` to ease debugging
2020-12-29 15:41:46 +02:00
Alexander Medvednikov
40ce18fa3c
checker: handle unwrapped optionals in infix exprs
2020-12-29 13:49:43 +01:00
yuyi
34c89258a4
cgen: fix array of array/map init ( fix #7597 ) ( #7671 )
2020-12-29 11:50:25 +01:00
Joe Conigliaro
d094baf107
cgen: add temp (TODO) auto str for interfaces
2020-12-29 20:25:38 +11:00
Delyan Angelov
84fc9cec4b
builtin: add string.split_by_whitespace()
2020-12-29 08:46:46 +02:00
yuyi
b87283e970
cgen: minor optimization of auto_eq_methods.v ( #7668 )
2020-12-29 07:48:37 +02:00
Lukas Neubert
cf441091f1
fmt: AnonFn with body is not single line ( #7659 )
2020-12-28 20:27:27 +02:00
Lukas Neubert
2360762a42
fmt: fix unexpected `comment`, expecting struct key for trailing arg syntax ( #7658 )
2020-12-28 20:26:24 +02:00
Delyan Angelov
fe7fa7077e
ci: fix for os.execvp on macos (cargs << charptr(cmdpath.str) too)
2020-12-28 20:20:56 +02:00
Delyan Angelov
8fe85bcc33
ci: fix for os.execvp on macos (<<charptr())
2020-12-28 20:15:30 +02:00
Delyan Angelov
4c40891d5e
ci: fix for os.execvp on macos (<<)
2020-12-28 20:10:57 +02:00
Delyan Angelov
a8b2745019
ci: fix for os.execvp on macos
2020-12-28 20:01:19 +02:00
Delyan Angelov
ef786f9a75
os: add os.execvp/2
2020-12-28 19:35:52 +02:00
Swastik Baranwal
2795f929fa
checker: update check for arr=arr1 ( #7651 )
2020-12-28 18:35:34 +01:00
yuyi
9631eac9c5
cgen: fix `array.index()` of ref struct ( #7652 )
2020-12-28 18:33:57 +01:00
ka-weihe
93262353d6
cgen: fix map exists bug ( #7647 ) ( #7655 )
2020-12-28 18:32:51 +01:00
yuyi
32091dd90e
cgen: fix struct equality ( #7649 )
2020-12-28 18:22:47 +02:00
Lukas Neubert
4783503185
fmt: keep interface comments between methods ( #7650 )
2020-12-28 18:14:55 +02:00
Lukas Neubert
97bfabf194
fmt: heavily refactor and improve/fix logic for structs that use short args syntax ( #7653 )
2020-12-28 18:14:08 +02:00
Lukas Neubert
ef6011b94c
fmt: keep comments after struct decl default value ( #7648 )
2020-12-28 15:38:21 +02:00
lydiandy
ecc7c27c9c
v.ast: document vlib/v/ast/ast.v ( #7624 )
2020-12-28 13:52:04 +02:00
Delyan Angelov
3f3ae67b55
Revert "cgen: fix struct_eq ( #7639 )"
...
This reverts commit 164dd3000b
.
2020-12-28 13:16:00 +02:00
penguindark
a98adbb3a4
regex: fix a bug, update docs, explain the assumptions of the `regex` module ( #7629 )
2020-12-28 12:43:03 +02:00
Ned Palacios
2946673bc2
parser: fix StructInitField pos, when value expr is empty ( #7643 )
2020-12-28 12:39:02 +02:00
yuyi
d46b930c71
cgen: fix `in array_of_ref_structs` ( fix #7623 ) ( #7640 )
2020-12-28 12:29:56 +02:00
yuyi
07459a77e3
cgen: fix gen_array_equality_fn() ( #7633 )
2020-12-28 12:26:50 +02:00
yuyi
164dd3000b
cgen: fix struct_eq ( #7639 )
2020-12-28 12:25:22 +02:00
yuyi
547df57316
cgen: fix gen_map_equality_fn() ( #7636 )
2020-12-28 12:22:14 +02:00
yuyi
dea3d0431d
parser: minor cleanup of `parse_block_no_scope()` ( #7644 )
2020-12-28 11:58:44 +02:00
Joe Conigliaro
64c0645bcb
checker: error when trying to propagate optional call in return stmt with ?
2020-12-28 20:09:43 +11:00
Delyan Angelov
100b3704cd
v.pref: fix `-nocache`, add `-no-retry-compilation`, add `-d trace_use_cache`
2020-12-28 09:42:43 +02:00
Delyan Angelov
b7a5dbf7b4
test-cleancode: add the rest of vlib/x/websocket/
2020-12-28 07:25:46 +02:00
Delyan Angelov
b65353794c
ci: run vfmt over websocket_client.v and websocket_server.v
2020-12-28 07:14:06 +02:00
Alexander Medvednikov
bd67b647f2
websocket: vfmt
2020-12-28 01:06:57 +01:00
Joe Conigliaro
dbad60acbf
net: use non versioned paths for openssl on mac arm64
2020-12-28 10:32:35 +11:00
ka-weihe
1d339cff16
map: remove unused code ( #7622 )
2020-12-27 19:16:45 +01:00
Larpon
9e6575eaab
runtime: document all functions ( #7612 )
2020-12-27 20:14:43 +02:00
Swastik Baranwal
d87011ab78
cgen: fix generic contains method ( #7618 )
2020-12-27 20:07:53 +02:00
Larpon
ed6ba0a2b8
rand: document all functions, document range notation form, fix copy-pasta ( #7619 )
2020-12-27 20:06:17 +02:00
ka-weihe
b9df7aae4d
map: cleanup ( #7621 )
2020-12-27 18:31:50 +01:00
Delyan Angelov
df61cf246b
cgen: fix `x.interface_field = value_implementing_interface` ( closes #7620 )
2020-12-27 19:12:39 +02:00
Delyan Angelov
8872b0a23b
v.util: fix launch_tool for the vdoc (folder) case
2020-12-27 17:43:44 +02:00
Lukas Neubert
6f194f2fa9
test-cleancode: add `benchmark` and `bitfield` ( #7613 )
2020-12-27 15:51:55 +02:00
Lukas Neubert
06fdf34214
fmt: unwrap long single line ifs ( #7608 )
2020-12-27 14:20:30 +01:00
Nick Treleaven
e813583bc1
checker: support integer and voidptr key types for maps ( #7503 )
2020-12-27 14:18:46 +01:00
Daniel Däschle
929a002229
vdoc: move to it's own directory cmd/tools/vdoc/ ( #7606 )
2020-12-27 14:43:23 +02:00
Lukas Neubert
c9081a8df8
fmt: improve conditions for single line if
2020-12-27 12:59:28 +01:00
cbracketdash
0210d1bf24
vrepl, term: return cursor to the top-left corner in vrepl after `clear` ( #7600 )
2020-12-27 13:43:36 +02:00
Alexander Medvednikov
06e9951224
Revert "map: fix map.clone, refactor, fix map_get_1, map_set_1 non-string keys ( #7538 )"
...
This reverts commit bcdf3ca0cf
.
2020-12-27 12:04:08 +01:00
Alexander Medvednikov
0d43ff2453
parser: fix `for i, mut val in vals {; examples: vfmt flappybird
2020-12-27 12:02:18 +01:00
Nick Treleaven
bcdf3ca0cf
map: fix map.clone, refactor, fix map_get_1, map_set_1 non-string keys ( #7538 )
2020-12-27 11:54:12 +01:00
yuyi
79117f5581
cgen: move logic from cgen.v to auto_eq_methods.v and array.v ( #7572 )
2020-12-27 11:24:35 +01:00
zakuro
21805ea2a5
all: make eprint[ln] behave same as print[ln] ( #7595 )
2020-12-27 11:22:16 +01:00
Delyan Angelov
d563261e58
vweb: run vfmt, add it to `v test-cleancode`
2020-12-27 11:38:12 +02:00
penguindark
1b9d514275
regex: fix a bug #7559 ( #7601 )
2020-12-27 09:16:00 +02:00
Nick Treleaven
1383771423
cgen: fix return type for MapEqFn and add MapCloneFn, MapFreeFn ( #7578 )
2020-12-26 22:14:31 +02:00
penguindark
b7f4e824df
regex: remove undocumented deprecated calls, optimize speed and memory usage ( #7582 )
2020-12-26 22:08:56 +02:00
Lukas Neubert
13b14ecead
test-cleancode: add the `arrays` module too ( #7583 )
2020-12-26 20:21:52 +02:00
Swastik Baranwal
e27252bef5
parser: fix the position of the multi variable += assign error ( #7584 )
2020-12-26 19:48:58 +02:00
Lukas Neubert
9a5bbc3101
fmt: use single quotes around fixed string arr default expr ( #7581 )
2020-12-26 15:12:25 +02:00
Delyan Angelov
e26e0c3f72
os: restore some of the deprecated os.File methods
2020-12-26 14:57:51 +02:00
Lukas Neubert
6969300f8a
test-cleancode: add vlib/orm ( #7577 )
2020-12-26 14:40:22 +02:00
Lukas Neubert
693e5137eb
fmt: cleanup copy pasta for array_init ( #7579 )
2020-12-26 14:22:50 +02:00
Lukas Neubert
f707e13b3f
fmt: keep order by in orm blocks ( #7576 )
2020-12-26 14:18:09 +02:00
Ned Palacios
dfcbf31f65
parser: return node on incomplete module selector ( #7574 )
2020-12-26 12:23:51 +02:00
yuyi
1558bd1658
parser: minor optimization of `expr()` ( #7575 )
2020-12-26 12:22:06 +02:00
Bakul Shah
80a9d08505
sokol: fix for freebsd ( #7466 )
2020-12-26 10:08:16 +02:00
Daniel Däschle
6842c3c1a4
vdoc: add a node type prefix ( #7563 )
2020-12-26 08:55:35 +02:00
yuyi
d66ed46486
parser: minor cleanup of `stmt()` ( #7573 )
2020-12-26 08:54:13 +02:00
Alexander Medvednikov
13f16b4a82
time: rename to_local_time() to local(); time.offset()
2020-12-26 02:10:47 +01:00
Daniel Däschle
7507403118
cgen: fix zero init bug of embedded structs ( #7567 )
2020-12-25 22:46:42 +02:00
Lukas Neubert
e7ca5dd17a
fmt: update expr_is_single_line for MatchExpr, StructInit and CallExpr with or block ( #7564 )
2020-12-25 21:43:50 +02:00
Lukas Neubert
2c0fba5480
fmt: keep comment between enum fields ( #7566 )
2020-12-25 21:41:59 +02:00
Delyan Angelov
270ba07e83
clipboard: add a `clipboard.x11` submodule, use it by default; add a `clipboard.dummy` for solaris
2020-12-25 19:34:21 +02:00
Nick Treleaven
17cccc7b36
gen: add MapHashFn typedef before map struct is declared ( #7541 )
2020-12-25 19:05:53 +02:00
Lukas Neubert
e9affe33ce
ast: fix C error for scope's .str() method ( #7561 )
2020-12-25 19:03:03 +02:00
yuyi
775d16cce3
array: remove redundant index method in array.v ( #7523 )
2020-12-25 17:21:23 +02:00
yuyi
3345925883
parser: minor simplification of `stmt` ( #7550 )
2020-12-25 16:59:13 +02:00
Lukas Neubert
8cd74df2f3
vfmt: keep UnsafeExpr linebreacks as set by developer ( #7558 )
2020-12-25 16:52:16 +02:00
Daniel Däschle
1605c3b5f8
parser: fix error when accessing module without name after dot ( #7530 )
2020-12-25 16:50:08 +02:00
Delyan Angelov
c6b0ce2a07
ci: disable socket error assertion in profile_test.v
2020-12-25 16:10:18 +02:00
Delyan Angelov
a631078d8a
tests: add vlib/v/tests/profile/profile_test.v regression test
2020-12-25 14:30:22 +02:00
Delyan Angelov
2c1e545d24
cgen: fix -profile for code outside builtin, that returns options
2020-12-25 14:11:21 +02:00
Lukas Neubert
0caf668e73
parser: error if operators are used as function names ( #7532 )
2020-12-24 13:38:11 +02:00
Lukas Neubert
691e6f9d3f
fmt: keep any langauge prefix variations in struct fields ( #7534 )
2020-12-24 13:36:54 +02:00
Delyan Angelov
e5d3aa916d
ci: fix windows jobs by restoring vlib/readline/readline_windows.c.v
2020-12-24 13:10:39 +02:00
zakuro
fec9f1324c
fmt: trim space in embedded comments ( #7521 )
2020-12-24 11:57:48 +01:00
Delyan Angelov
9d1365ec67
readline: put duplicated code in readline_default.c.v
2020-12-24 12:39:11 +02:00
Delyan Angelov
d1223851a2
pref: support _default.c.v , overridable by _platform.c.v
2020-12-24 12:16:20 +02:00
penguindark
2824e07baa
regex: add a find_all_str function ( #7517 )
2020-12-24 07:27:46 +02:00
Delyan Angelov
36dcace0a7
cgen: fix compiling call expressions with no varargs (tcc bug)
2020-12-23 21:15:00 +02:00
spaceface
214290d55b
fmt: add a space around single-line `unsafe` expressions ( #7505 )
2020-12-23 19:13:42 +01:00
Daniel Däschle
b27f5c378c
all: reimplement struct embedding with methods ( #7506 )
2020-12-23 19:12:49 +01:00
yuyi
132807d5d1
cgen: implement generic `array.index` ( #7501 )
2020-12-23 19:10:16 +01:00
yuyi
7b9756be72
parser: check for builtin function redefinitions ( fix #7499 ) ( #7507 )
2020-12-23 18:17:09 +02:00
zakuro
a6e6c48c36
fmt: keep _ separator in number literals ( #7495 )
2020-12-23 14:48:43 +02:00
Delyan Angelov
2c4a51a596
parser: use `v fmt -w "$p.scanner.file_path"` in warns, easing fixing
2020-12-23 14:17:20 +02:00
yuyi
8f4281b790
checker: merge minus_op_wrong_type_err tests to just one ( #7489 )
2020-12-23 10:16:04 +02:00
yuyi
b08fe73614
checker: merge mod_op_wrong_type_err tests to just one ( #7490 )
2020-12-23 10:15:25 +02:00
yuyi
0dd385d480
checker: merge mul_op_wrong_type_err tests to just one ( #7491 )
2020-12-23 10:14:32 +02:00
yuyi
36cc70983e
checker: merge div_op_wrong_type_err tests to just one ( #7493 )
2020-12-23 10:14:08 +02:00
yuyi
5283811055
checker: merge add_op_wrong_type_err tests to just one ( #7488 )
2020-12-23 10:13:46 +02:00
yuyi
1c64635d61
checker: fix multi_array type mismatch check ( #7486 )
2020-12-23 08:05:44 +02:00
yuyi
d964dedbb2
cgen: use more uniform format for automatic code generation ( #7487 )
2020-12-23 08:01:41 +02:00
yuyi
70c136441b
cgen: fix in array of struct error ( fix #7452 ) ( #7463 )
2020-12-23 02:32:19 +01:00
Lukas Neubert
a2cd1b163c
fmt: keep empty curlies and parenthesis as they are ( #7329 )
2020-12-22 23:43:48 +01:00
Lukas Neubert
c4aae2b55f
vfmt: do not replace module aliases in fn param and return types ( #7472 )
2020-12-22 22:38:13 +02:00
penguindark
4069a4c55d
regex: speed optimization 2 ( #7473 )
2020-12-22 22:34:46 +02:00
Alexander Medvednikov
e4f94b6ad5
V 0.2
2020-12-22 20:48:45 +01:00
penguindark
b16052db95
regex: speed optimization ( #7471 )
2020-12-22 18:42:32 +02:00
Delyan Angelov
97855eca93
ci: fix the failing build-module-docs job
2020-12-22 17:25:57 +02:00
joe-conigliaro
5f90192970
math: use full import module name in tests
2020-12-23 01:38:17 +11:00
Lukas Neubert
d1fc65c260
parser: add information about the ending line for a few elements ( #7414 )
2020-12-22 14:45:12 +01:00
zakuro
fb0c4556fd
vfmt: keep JS object name ( #7462 )
2020-12-22 15:32:49 +02:00
Ned Palacios
06369a27c2
parser: return incomplete selector expr stmt ( #7465 )
2020-12-22 13:00:23 +01:00
joe-conigliaro
d5b03d16e0
builder: if fpath is a descendant of modules folder add it as a search path
2020-12-22 22:32:02 +11:00
joe-conigliaro
7224cd667c
rand: use full import in tests (fix -usecache)
2020-12-22 22:04:51 +11:00
yuyi
c11928260d
scanner: minor cleanup of scanner.v ( #7467 )
2020-12-22 10:56:29 +01:00
Alexander Medvednikov
a8447398f5
io: remove obsolete OutputStream
2020-12-22 10:44:45 +01:00
joe-conigliaro
dd27d0a2a3
cgen/builder: make unused-command-line-argument a warning & cgen module_built fix
2020-12-22 19:21:05 +11:00
Delyan Angelov
28b1be3e6e
cgen: enable `./v -os windows -stats vlib/math/big/big_test.v`
2020-12-22 10:09:29 +02:00
Delyan Angelov
93c0f503a2
math.big: make big.from_string take a decimal, add big.from_hex_string
2020-12-22 09:45:56 +02:00
yuyi
b47daad40d
all: remove redundant array.contains definitions ( #7464 )
2020-12-22 08:32:32 +01:00
Alexander Medvednikov
939e10cb28
math.big: minor clean up
2020-12-22 08:27:50 +01:00
Alexander Medvednikov
b3e0926601
json: decode/encode time.Time
2020-12-22 07:24:44 +01:00
Delyan Angelov
9eb6c4ef87
flag: run vfmt over vlib/flag, add it to vtest-cleancode.v
2020-12-21 22:24:10 +02:00
Lukas Neubert
5cd2dffafb
checker: error, when same type is used multiple times in a sum type ( #7432 )
2020-12-21 22:05:50 +02:00
Major Taylor
c831711a0e
sqlite: add `close` method, and an `is_open` field ( #7382 )
2020-12-21 22:02:29 +02:00
zakuro
6c341a77f5
strings: run v fmt ( #7438 )
2020-12-21 22:00:32 +02:00
zakuro
fade162471
semver: run v fmt ( #7439 )
2020-12-21 21:25:19 +02:00
zakuro
805ec8e177
cli: run v fmt ( #7440 )
2020-12-21 21:23:40 +02:00
Lukas Neubert
304aafdc50
fmt: add a space after + operator/method overload ( #7453 )
2020-12-21 21:20:00 +02:00
spaceface
c544cc508b
pref: fix cross-compiling graphical apps to Windows ( #7449 )
2020-12-21 19:45:12 +02:00
Delyan Angelov
dc3a6bb169
builder: use the same compilation mode for thirdparty object files ( #7450 )
2020-12-21 17:46:26 +01:00
yuyi
21cd765eaa
cgen: fix `in` multi_array, generate `.contains()` ( fix #7427 ) ( #7448 )
2020-12-21 16:59:43 +01:00
Nick Treleaven
0edec06eac
gen: use new_map, new_map_init_1 functions ( #7444 )
2020-12-21 14:37:19 +01:00
Alexander Medvednikov
8eac658ed1
cgen: make use_cache less noisy
2020-12-21 11:01:14 +01:00
zakuro
c639dd03d0
time: move - operator to operator.v ( #7433 )
2020-12-21 09:28:00 +01:00
zakuro
c69947160b
time: change type of duration constants from i64 to Duration ( #7435 )
2020-12-21 09:27:06 +01:00
Alexander Medvednikov
fc965b7d92
strconv: make atoi return ?int
2020-12-21 08:35:24 +01:00
Nick Treleaven
2147d8785b
map: add functions new_map/new_map_init_1 with key_bytes parameter ( #7424 )
2020-12-21 06:03:59 +01:00
joe-conigliaro
f0391f7a8f
cgen: fix assignment of fixed array var to another var ( #7429 )
2020-12-21 06:03:09 +01:00
penguindark
c9171ebe9a
regex: fixes and optimizations ( #7431 )
2020-12-21 05:36:14 +01:00
Nick Treleaven
82d1b6a5b7
map: fix wrong use of map.cap and rename field ( #7412 )
2020-12-21 05:34:35 +01:00
Delyan Angelov
5f5c53348b
ci: fix vlib/v/tests/project_with_c_code_2/modc/wrapper.v
2020-12-20 18:33:31 +02:00
joe-conigliaro
23bfbf1665
cmd/pref: disable -usecache on windows & enable by default (commented)
2020-12-21 03:31:57 +11:00
Delyan Angelov
dd5b25a9f2
ci: fix sha1.v, sha1block_generic.v and szip.v
2020-12-20 18:28:40 +02:00
Delyan Angelov
969f8f1a75
ci: fix compilation of the test infrastructure
2020-12-20 18:27:42 +02:00
Alexander Medvednikov
50a6976b5e
all: minor array fixes
2020-12-20 16:08:56 +01:00
Alexander Medvednikov
3c210a57f9
all: minor array fixes
2020-12-20 15:40:49 +01:00
Alexander Medvednikov
6bf21c300a
checker: do not allow arr1=arr2 without cloning
2020-12-20 15:33:55 +01:00
Alexander Medvednikov
583c02316a
checker: more arr1=arr2 fixes
2020-12-20 15:21:32 +01:00