Ned Palacios
fc375a40f8
x.json2: add fast_raw_decode; support for i64 and f32 ( #6586 )
2020-10-09 16:11:55 +02:00
Nick Treleaven
f734f8167b
checker: improve error message for match branch type mismatch ( #6588 )
2020-10-09 16:11:11 +02:00
Alexander Medvednikov
c463c26983
autofree: optionals fix
2020-10-09 01:13:31 +02:00
Nick Treleaven
92630a2821
checker: error if assigning to a function ( #6581 )
2020-10-09 00:48:39 +02:00
Alexander Medvednikov
7d65e4cb10
autofree: fix and test var declarations
2020-10-08 17:10:20 +02:00
Alexander Medvednikov
1123b8259a
time: vfmt time/parse.v
2020-10-08 16:59:43 +02:00
Delyan Angelov
c3626bf2e6
vfmt: prepare for using .source_name in type_to_str
2020-10-08 14:26:12 +03:00
Swastik Baranwal
aea52af9ae
checker: add is_mut check for disallowing taking address of map's key and array's element outside unsafe ( #6573 )
2020-10-08 09:37:18 +03:00
Delyan Angelov
efce448b23
parser: always treat MainLetter(x) as a cast, even when the type is not yet known
2020-10-07 15:50:54 +03:00
Delyan Angelov
d46d607334
backporting: remove C typedef redefinitions of map_int/map_string/array_byte/array_string
2020-10-07 11:32:50 +03:00
Delyan Angelov
317a9bae5f
backporting: remove redefinition of strconv__Float64u
2020-10-07 11:06:52 +03:00
Delyan Angelov
3d0f4fd756
backporting: cleanup Makefile, use -std=gnu99 by default, honor CFLAGS and LDFLAGS (CentOS 6.9)
2020-10-07 07:05:59 +00:00
shnorbluk
b940dc4f8a
cli: help displayed when a Command has no execute function ( fix #6530 ) ( #6567 )
2020-10-07 05:39:13 +02:00
Delyan Angelov
ce302c29e4
builtin: support also [abc,def].sort(b>a)
2020-10-06 21:33:15 +03:00
Nick Treleaven
f7decfe399
checker: infer generic type T from matching fn call argument ( #6298 )
2020-10-06 15:34:02 +02:00
Delyan Angelov
8e5067421f
vet: accumulate the collected errors manually (fixes CI)
2020-10-06 10:02:35 +03:00
Delyan Angelov
70826914a7
ci: fix mut_args_warning.vv error
2020-10-06 09:38:07 +03:00
Alexander Medvednikov
256a572cbe
vet: fix vet_errors
2020-10-06 07:07:50 +02:00
Alexander Medvednikov
ed15b40529
parser: do not allow array references + explain why
2020-10-06 06:53:48 +02:00
Alexander Medvednikov
63c9b88e7f
vet: remove unnecessary &[]string
2020-10-06 06:43:28 +02:00
Alexander Medvednikov
a51c445df8
ci: vfmt -verify more important files
2020-10-06 06:32:39 +02:00
Alexander Medvednikov
d2d3289a2a
all: mark pref.Preferences field as immutable
2020-10-06 06:24:50 +02:00
Delyan Angelov
06a02c41c3
tests: reduce probability of locks during macos runs of live_test.v
2020-10-05 21:20:42 +03:00
Swastik Baranwal
d77669da80
test: add tests for disallowing map/array get element/key address ( #6568 )
2020-10-05 18:40:51 +03:00
kalapalo
4b410534dd
cgen: add C fn memfreedup to cheaders.v ( #6563 )
2020-10-05 13:14:41 +02:00
Swastik Baranwal
5f07b255bd
checker: disallow address of array and map index outside unsafe ( #6557 )
2020-10-05 13:08:30 +02:00
Ned Palacios
2b1a5d7a56
vdoc: move local scope-based doc generation to its own function ( #6565 )
2020-10-05 07:59:17 +02:00
Enzo
35a83464d0
gen: separate sumtype from classic match ( #6547 )
2020-10-04 19:50:23 +02:00
Ekopalypse
2622070f14
os: ensure that setenv creates the key on windows ( #6560 )
2020-10-04 19:43:28 +02:00
Delyan Angelov
0c174104fc
checker: allow &=,|=,^=,%= on an integer number type aliases
2020-10-04 15:29:09 +03:00
Delyan Angelov
628b136e85
checker: allow casting from floats/enums to byte
2020-10-04 14:46:24 +03:00
Marcin
aa81ebb600
scanner: fix double quotes escape ( #6474 )
2020-10-04 10:34:04 +02:00
Enzo
fd88bfbac8
fmt: fix formatting of anon args ( #6545 )
2020-10-04 06:32:47 +02:00
Leonardo Cecchi
51987e17df
pg: make `exec`, `q_int` and `q_strings` return an optional ( #6554 )
2020-10-04 06:31:47 +02:00
Enzo
c84848c417
fmt: fix formatting enum with attributes ( #6551 )
2020-10-03 21:33:02 +03:00
vmcrash
c5e46c9e55
atoi.v: add common_parse_uint2 with error code return values ( #6550 )
2020-10-03 20:57:37 +03:00
Henrixounez
c324169af0
all: remove intermediate handling for both global definition syntaxes ( #6546 )
2020-10-03 15:41:45 +02:00
Swastik Baranwal
7e13518cc2
parser: disallow match expr at certain places ( #6490 )
2020-10-03 16:30:58 +03:00
Henrixounez
a9da4dd437
parser: fix indentation to tabs ( #6548 )
2020-10-03 14:20:41 +02:00
Delyan Angelov
de77f0ba0f
vfmt: make vlib/v/table/table.v vfmt-able
2020-10-03 12:57:21 +03:00
Enzo
677b0ba2d2
gen: access fields in multi-type sumtype match ( #6541 )
2020-10-03 11:19:43 +02:00
Delyan Angelov
7b034a54e3
vfmt: make vlib/v/table/atypes.v vfmt-able
2020-10-03 11:48:12 +03:00
Henrixounez
c9574ae7d7
syntax: new global variable declaration syntax ( #6540 )
2020-10-03 07:03:44 +02:00
Leonardo Cecchi
8ac0bd44bd
pg: avoid leaking a PGconn on connection errors ( #6543 )
2020-10-03 07:03:11 +02:00
Swastik Baranwal
c8a884f57f
checker: fix typos in chan ( #6539 )
2020-10-03 06:59:30 +02:00
kalapalo
eefe067c27
cgen: fix `as` cast when sumtype is the result of a function call ( #6537 )
2020-10-03 05:04:15 +02:00
Daniel Däschle
2204bad7cf
gen: removes space on struct printing ( #6535 )
2020-10-02 13:06:02 +02:00
Delyan Angelov
70c87137a9
live_test.v: wait 5 times more on macos
2020-10-02 11:38:49 +03:00
Nick Treleaven
7c86b03505
checker: don't error if last statement in match branch produces a value ( #6523 )
2020-10-02 09:33:04 +02:00
Daniel Däschle
8e8e808fc9
gen: fix sumtype custom str ( #6534 )
2020-10-02 09:32:07 +02:00
Ekopalypse
1a7ac5e382
builtin: VectoredExceptionHandler cast on x86 ( #6525 )
2020-10-02 05:17:33 +02:00
Nicolas Sauzede
c825275f7f
pref: fix whitespace in compiler message ( #6529 )
2020-10-02 05:16:16 +02:00
Henrixounez
8152b86652
checker: detect correct len expression for multidimensional array init ( #6521 )
2020-10-02 03:12:33 +02:00
Nick Treleaven
7e720a1253
pref: do not check arguments after 'run' command ( #6524 )
2020-10-01 23:30:39 +03:00
Henrixounez
a57e01fee7
parser: dont allow single letter enums ( #6526 )
2020-10-01 23:29:49 +03:00
spaceface777
f55f2fb9d1
gen: optimize `str == ''` to `str.len == 0` for performance ( #6527 )
2020-10-01 23:28:44 +03:00
Delyan Angelov
ac384db71f
builder: cleanup .timing_message/2
2020-10-01 18:21:34 +03:00
Delyan Angelov
a0e4be04be
compiler: print more suggestions, without a good specific match
2020-10-01 17:27:31 +03:00
Henrixounez
0f1ed1ca09
scanner: add an error for unfinished string literals ( #6519 )
2020-10-01 16:40:59 +03:00
Delyan Angelov
11b16a63cf
checker: add a suggestion for misspelled struct field name errors
2020-10-01 15:36:47 +03:00
Alexander Medvednikov
f534edc371
doc: replace os.base_dir with os.dir
2020-10-01 01:30:22 +02:00
Alexander Medvednikov
4879661f5a
os: remove base_dir(); dir() and base() fixes
2020-10-01 01:25:52 +02:00
Enzo
324d547cdb
parser: allow multiple types in match branch ( #6505 )
2020-10-01 01:07:36 +02:00
Nick Treleaven
18be7b115a
checker: disallow most statements in if/match expression branches ( #6509 )
2020-09-30 16:06:22 +02:00
Lukas Neubert
3a8be4d8d9
os: home_dir() remove trailing slash ( #6512 )
2020-09-30 16:02:54 +02:00
Lukas Neubert
76e373a5f4
v help: fix newline ( #6510 )
2020-09-30 15:57:22 +03:00
Larpon
4cd5153b32
android: enable autofree ( #6503 )
2020-09-30 07:40:05 +02:00
Alexander Medvednikov
ae7689f739
autofree: simplify, clean up, and fix complex arg exprs
2020-09-30 07:27:24 +02:00
Daniel Däschle
c38a050125
cgen: fix array and map printing ( #6508 )
2020-09-30 01:26:27 +02:00
Delyan Angelov
dc954bbb03
all: use `macos` consistently in os.user_os and the compiler
2020-09-29 22:32:20 +03:00
JalonSolov
2fd6c05445
fonts: fix so it does not try for RobotoMonoMono.ttf ( #6507 )
2020-09-29 13:20:37 +03:00
Ned Palacios
1aec041371
json: fix encode/decode support for generic structs ( #6489 )
2020-09-29 03:15:00 +02:00
Nick Treleaven
05dcdfd267
pref: error if unknown argument passed to `v` ( #6487 )
2020-09-29 03:13:54 +02:00
Nick Treleaven
9f33b33803
parser: warn about ambiguous infix/prefix op token ( #6491 )
2020-09-29 03:13:10 +02:00
Alexander Medvednikov
9e31335744
pref: remove obsolete flags
2020-09-29 02:54:05 +02:00
Daniel Däschle
06cade6c31
all: change .ReturnType and .Type to .return_type and .typ ( #6494 )
2020-09-28 06:13:38 +02:00
Delyan Angelov
f9ce7f3542
vfmt: fix formatting for [4][4]int static arrays
2020-09-27 22:46:33 +03:00
Delyan Angelov
cbd7c7d8c6
tests: support VTEST_ONLY in vlib/v/fmt/fmt_keep_test.v too
2020-09-27 22:01:46 +03:00
Delyan Angelov
cfdf66c129
ci: run vfmt over checker.v
2020-09-27 17:08:28 +03:00
Delyan Angelov
220f3cc2b9
bare: update Signo enumeration
2020-09-27 16:48:25 +03:00
Delyan Angelov
a6d525eb92
ci: fix `is not a variable and cannot be locked` failing tests
2020-09-27 16:32:46 +03:00
Emily Hudson
3a869c726b
builtin: fix definition of VectoredExceptionHandler ( #6495 )
2020-09-27 15:56:30 +03:00
Delyan Angelov
03258db26d
ci: other mut vlib test fixes
2020-09-27 11:18:55 +03:00
Delyan Angelov
aa889b0edc
ci: fix vlib/x/websocket tests
2020-09-27 11:10:56 +03:00
Delyan Angelov
7c6695317c
Revert "ci: fix building v from vc"
...
This reverts commit b3f503e0ce
.
2020-09-27 10:36:26 +03:00
Delyan Angelov
b3f503e0ce
ci: fix building v from vc
2020-09-27 10:34:11 +03:00
Alexander Medvednikov
c5dc792c5d
fmt: args => params
2020-09-27 03:46:15 +02:00
Alexander Medvednikov
3d5292b63f
tcp/udp: fix mutability
2020-09-27 03:40:59 +02:00
Alexander Medvednikov
fca344d1fb
all: fn args => params
2020-09-27 03:32:56 +02:00
Alexander Medvednikov
e2c7126d11
checker: verify mutability of method args
2020-09-27 03:14:24 +02:00
Delyan Angelov
af37c7ac6b
gg: prevent messages about missing font variants without `-d debug_font`
2020-09-26 09:36:46 +03:00
Daniel Däschle
d782de5b00
gen: struct str fixes ( #6483 )
2020-09-25 23:12:33 +02:00
Delyan Angelov
b999d01de7
runtime: use GetCurrentProcessorNumber for runtime.nr_cpus()
2020-09-25 22:02:29 +03:00
Nick Treleaven
fbae0a7274
checker: warn if fn looks like a test fn but filename doesn't end in `_test.v` ( #6469 )
2020-09-25 19:26:11 +03:00
spaceface777
b44620d065
time: use linux high-precision timers on Android as well ( #6476 )
2020-09-25 18:02:02 +03:00
spaceface777
aa1d5fcbdd
flag: fix panic if flag value was not provided ( #6478 )
2020-09-25 16:31:35 +03:00
spaceface777
ae48b709ed
gg: don't call `os.is_file()` on Android (the font is part of the APK there) ( #6475 )
2020-09-25 13:06:20 +03:00
Daniel Däschle
abc98c273c
parser: require assign on type alias ( #6477 )
2020-09-25 12:02:32 +02:00
Lukas Neubert
2ea94d621f
gg: fix loading variants of many fonts in new_ft() ( #6468 )
2020-09-25 11:52:57 +02:00
spaceface777
0b95d72354
checker: comp. if branch logic fix ( #6473 )
2020-09-25 12:48:27 +03:00
Daniel Däschle
90d1a689db
gen: fix str gen for pointers in structs ( #6462 )
2020-09-24 21:14:16 +02:00
Daniel Däschle
e384dea8ac
checker: add error for amp on literals ( #6467 )
2020-09-24 21:13:46 +02:00
Alexander Medvednikov
47a62b12d4
autofree: advanced expr test
2020-09-24 19:22:16 +02:00
Alexander Medvednikov
403cd0d915
Revert "gen: scape string function in gen/str.v ( #6452 )"
...
This reverts commit 60fbcc37fc
.
2020-09-24 18:19:18 +02:00
Marcin
60fbcc37fc
gen: scape string function in gen/str.v ( #6452 )
2020-09-24 18:18:10 +02:00
Nick Treleaven
be2ac0ba89
fmt: fix writing ConcatExpr ( #6466 )
2020-09-24 18:04:39 +02:00
Delyan Angelov
dbce01792c
gg: try 3 different fonts in system_font_path on MacOS
2020-09-24 17:09:08 +03:00
Delyan Angelov
1f21bc4b49
gg: bugfix on missing font file, remove last empty line in `v doctor`
2020-09-24 16:53:06 +03:00
Nick Treleaven
3925c3fa20
parser: disallow index variable with range `for` ( #6464 )
2020-09-24 15:52:44 +03:00
Marcin
fb45e2e046
flag: fix panic on single `-`
2020-09-24 15:50:44 +03:00
Uwe Krüger
72ecc222ee
fmt: support `select` expressions ( #6460 )
2020-09-23 22:22:39 +02:00
Daniel Däschle
4f09ddccb4
cgen: implement sum type str gen ( #6454 )
2020-09-23 20:51:51 +02:00
Nick Treleaven
2886b1c67d
checker: require binary operands for &&, || ( #6449 )
2020-09-23 20:48:25 +02:00
Uwe Krüger
9c0758639b
cgen: fix `for match {...} {` and `for select {...} {` ( #6441 )
2020-09-23 06:05:12 +02:00
Alexander Medvednikov
624f22e27e
all: mutability check (part 1); enable mutable sumtype args
2020-09-22 05:28:29 +02:00
Delyan Angelov
a9ef7d173f
doctor: suggest `v doctor` in issue templates and C builder errors
2020-09-21 18:29:52 +03:00
Ned Palacios
744f685973
vdoc: document variables in a specific pos/scope; support `v doc os File` ( #6354 )
2020-09-21 17:40:39 +03:00
Swastik Baranwal
077b597bd8
scanner/parser: change error msgs for `\0` and `\x00` and add error for r`byte` and c`byte` ( #6436 )
2020-09-21 17:34:24 +03:00
Uwe Krüger
0f1c484ad1
parser/checker: `if select { ... } {` ( #6434 )
2020-09-21 07:34:04 +02:00
Alexander Medvednikov
27f91faae5
gg: remove an old compielr hack that's no longer needed
2020-09-21 02:51:14 +02:00
Alexander Medvednikov
8c8fe02000
gg: mouse_move, mouse_down
2020-09-21 02:42:53 +02:00
Leonardo Cecchi
21c5ff681b
pg: add binding for PQfinish (close) ( #6435 )
2020-09-21 01:47:37 +02:00
Henrixounez
e429a77de2
gen: named imported structs operator overloading and str methods ( #6433 )
2020-09-20 19:51:14 +02:00
Henrixounez
5086fd537c
checker: prompt error on implicit int overflow by literal ( #6410 )
2020-09-20 16:29:01 +02:00
Marcin
34884c1631
os: fix binary mode read/write on windows ( #6431 )
2020-09-20 16:28:45 +02:00
Delyan Angelov
d4fbf422b3
gg: support transparency for rect/triangle/etc primitives too
2020-09-20 12:05:30 +03:00
Uwe Krüger
4ae88c69ac
sync/select: allow push of literals and calculated expressions ( #6429 )
2020-09-20 03:50:09 +02:00
Alexander Medvednikov
c781a5f245
gg: draw_triangle(); draw_image_flipped()
2020-09-20 03:47:32 +02:00
Nick Treleaven
9958881cbe
parser: support parsing unsafe (as first token) as UnsafeExpr ( #6032 )
2020-09-19 19:18:36 +03:00
Swastik Baranwal
1c886ad067
scanner: add check for `!is_raw` for null `\0` ( #6427 )
2020-09-19 19:09:18 +03:00
Henrixounez
4b0e7fc979
checker: check if imported struct is public ( #6425 )
2020-09-19 18:16:43 +03:00
Henrixounez
4121ba9ea9
parser: fix error about multiple modules showing when eof ( #6423 )
2020-09-19 02:15:47 +02:00
Uwe Krüger
31a52cdf21
cgen: implement channel `select` block code generation ( #6424 )
2020-09-19 02:14:35 +02:00
Enzo
3126ae305c
checker: verify use of blank identifier ( #6412 )
2020-09-18 23:47:50 +02:00
Delyan Angelov
78e6ddee75
tests: enable running `v test .` inside vlib/v/ too
2020-09-18 19:20:01 +03:00
Daniel Däschle
1b9711edde
gen: fix C warnings by cleaning up skip_struct_init ( #6416 )
...
* gen: removes struct name from list which shouldn't be initialized
* gen: vfmt
* cgen: remove the skip_struct_init list
* Revert "cgen: remove the skip_struct_init list"
This reverts commit d9e1fdbb4c
.
* fix ci
* vfmt vlib/v/gen/cgen.v
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-09-18 16:36:40 +03:00
Henrixounez
46dc6cc24b
repl: fix ctrl+z job to background on linux ( #6417 )
2020-09-18 16:34:00 +03:00
Delyan Angelov
d2badcdedf
vlib: fix more C warns on windows
2020-09-18 13:40:47 +03:00
Henrixounez
c1f04d8c72
builtin: fix min value for int_str ( #6411 )
2020-09-18 12:56:16 +03:00
Daniel Däschle
ffc8cf3925
gen: c don't generate x >= 0 check for unsigned ints in range exprs in matches ( #6414 )
2020-09-18 12:53:19 +03:00
Daniel Däschle
f7aa9cb0c5
vlib: fix C warning for UNICODE macro redefinition on windows ( #6415 )
2020-09-18 12:51:55 +03:00
Henrixounez
c02a0f90df
checker: prompt error on script expression while inside a file with main ( #6400 )
2020-09-18 01:14:14 +02:00
Henrixounez
4038ac463c
gen: bytes array print not ending prematurely when null byte ( #6401 )
2020-09-18 01:12:32 +02:00
Nick Treleaven
14743458e5
checker: tweak error messages for `or` block; use proper type names ( #6377 )
2020-09-18 01:09:00 +02:00
Daniel Däschle
f59b771c76
parser: fix nested amp ( #6402 )
2020-09-18 01:04:56 +02:00
Nick Treleaven
69c592e0d6
checker: disallow infix op on an optional type ( #6406 )
2020-09-18 01:03:55 +02:00
Henrixounez
99574e465d
scanner: allow escape on null character ( #6404 )
2020-09-18 01:02:06 +02:00
Enzo
a1e127ae46
checker: check type in `is` InfixExpr ( #6407 )
2020-09-18 01:01:05 +02:00
spaceface777
ff92c3409d
ast: merge `IfExpr` and `CompIf` ( #6011 )
2020-09-18 00:58:54 +02:00
Seven Du
98e6d25b42
vweb: make ip() to return peer_ip work ( #6399 )
2020-09-17 10:38:39 +03:00
Delyan Angelov
6f7bb30b0a
tests: fix strconv.v_sprintf arrity mismatch in format_test.v
2020-09-17 00:33:25 +03:00
Delyan Angelov
80b150d3ad
strconv.v_sprintf: add runtime checks&panics on arrity mismatches
2020-09-17 00:24:33 +03:00
Lukas Neubert
2464deec82
cli: improvements to help and error messages ( #6375 )
2020-09-16 22:01:44 +02:00
Henrixounez
608df40058
checker: fix error declaration on a value ( #6390 )
2020-09-16 22:01:15 +02:00
Delyan Angelov
e2e683199d
time: do not panic on time.new_time({unix: 1608854400}).str()
2020-09-16 22:14:02 +03:00
Daniel Däschle
c960b5979e
vlib: fix incompatible pointer warning ( #6385 )
2020-09-16 17:40:02 +03:00
Uwe Krüger
1bc9063573
parser: implement parsing of `select` block ( #6379 )
2020-09-16 15:34:57 +02:00
Daniel Däschle
3a795e6d9b
gen: fixes C warnings by appending U after unsigned integer literals ( #6384 )
2020-09-16 15:50:41 +03:00
Delyan Angelov
5da698b4bf
tests: add support for skipping tests in vlib/v/compiler_errors_test.v too
2020-09-15 19:56:52 +03:00
Nick Treleaven
b552c29bef
os: add fn `read_bytes_into` with buffer argument ( #6365 )
2020-09-14 15:34:34 +02:00
Delyan Angelov
a9bd6acd52
builtin: fix new_dense_array (avoid the &string(int(...)) bug generating (int*) )
2020-09-14 16:26:25 +03:00
Delyan Angelov
bbf4983524
autofree: add option_reassigned.v and option_simple.v tests.
2020-09-14 13:04:24 +03:00
Alexander Medvednikov
bffa100aa6
autofree: optional fix
2020-09-13 21:36:33 +02:00
Delyan Angelov
2bd4355a4c
os: add check for path.len == 0 in vfopen
2020-09-13 18:08:58 +03:00
Delyan Angelov
8c71ba8912
os: add more error checking for os.read_bytes and os.read_file
2020-09-13 18:03:19 +03:00
Alexander Medvednikov
68948c7947
checker: vfmt checker.v
2020-09-13 16:21:40 +02:00
Tomas Hellström
a160038e1a
ci: re-enable autobahn tests (without autofree) ( #6360 )
2020-09-13 16:20:22 +02:00
Vasilis Katsifolis
43942057a4
checker: fix a type check that caused a C error #6238 ( #6358 )
2020-09-13 15:19:53 +02:00
Uwe Krüger
168daebccf
sync/channels: fix bug that caused 100% CPU on block ( #6357 )
2020-09-13 15:13:06 +02:00
Alexander Medvednikov
fc88f43e50
autofree: make optional methods work
2020-09-13 03:20:34 +02:00
Alexander Medvednikov
f337980e52
autofree: move tmp var generation to a separate method
2020-09-13 03:18:13 +02:00
Alexander Medvednikov
9149d8ecb5
autofree: a small simplification
2020-09-13 03:12:09 +02:00
Alexander Medvednikov
f074d766e5
ci: disable gitly autofree build for now
2020-09-13 03:06:16 +02:00
Alexander Medvednikov
db51ee08ea
autofree: more fixes in optionals
2020-09-13 03:00:45 +02:00
Yağızcan Değirmenci
e77c4c182d
sqlite: fix indentation in readme ( #6356 )
2020-09-12 16:42:35 +02:00
Alexander Medvednikov
b74c1805d7
cgen/autofree: fix and simplify optionals
2020-09-12 16:40:52 +02:00
Delyan Angelov
37311883c1
tests: add optional_method_err.vv
2020-09-12 13:12:06 +03:00
Delyan Angelov
0801f88d0a
tests: cleanup vlib/v/checker/tests/run ; add unused_variable_warning.vv
2020-09-12 12:33:17 +03:00
Delyan Angelov
60ecb7e4b6
os: change f.write and f.writeln to return options too
2020-09-12 08:39:28 +03:00
Oghogho Odemwingie
332f3a924c
builtin: consume matched string length in string.replace_each ( #6349 )
2020-09-12 02:31:06 +02:00
Uwe Krüger
b10d79c4d9
sync/channels: fixes for `try_push/pop()`, optimizations ( #6352 )
2020-09-12 02:29:11 +02:00
Sandro Martini
07b5d6b1b6
vweb: add mime type for json static content ( #6347 )
2020-09-11 23:14:44 +03:00
Delyan Angelov
96c22a26b9
tests: cleanup if_smartcast_test.v
2020-09-11 22:00:13 +03:00
Delyan Angelov
40ed2e1b3d
builtin: use C.write for print/eprint . Call C.SetConsoleOutputCP(C.CP_UTF8) on windows
2020-09-11 16:20:35 +03:00
Delyan Angelov
d46c1f0f20
tests: fix sporadic waitgroup failure on slow windows VMs in anon_fn_test.v
2020-09-11 16:00:24 +03:00
Daniel Däschle
ce62f997f3
all: better type error positions ( #6345 )
2020-09-11 14:37:14 +02:00
Alexander Medvednikov
62a692b29c
checker: make the "unnecessary default" error a warning for now
2020-09-11 13:59:28 +02:00
Alexander Medvednikov
53bed596e7
autofree: do not free _ vars
2020-09-11 13:58:12 +02:00
Alexander Medvednikov
e0d20eadff
autofree: free strings on re-assignments
2020-09-11 13:55:20 +02:00
Alexander Medvednikov
17882db635
autofree: disable ?string test for now
2020-09-10 22:19:18 +02:00
Delyan Angelov
ce6d2759f5
os: add os.open_stdin/0 and os.File.get_line/0
2020-09-10 16:57:03 +03:00
Alexander Medvednikov
67cc515e74
autofree: ?string test
2020-09-10 13:41:30 +02:00
Alexander Medvednikov
03327e5161
time: minor fixes + vfmt
2020-09-10 13:26:01 +02:00
Ned Palacios
368c2a6bf0
vlib: add x/json2 ( #6336 )
2020-09-10 12:05:40 +02:00
Alexander Medvednikov
bc8aab4775
checker: fix := test
2020-09-09 17:59:51 +02:00
Alexander Medvednikov
3956ea4665
Revert "checker: fix := test"
...
This reverts commit 818220de45
.
2020-09-09 17:55:48 +02:00
Alexander Medvednikov
818220de45
checker: fix := test
2020-09-09 17:50:14 +02:00
Alexander Medvednikov
5d484bf022
checker: better error message for incorrect `mut x :=`
2020-09-09 17:27:16 +02:00
Daniel Däschle
3a146a6dbe
checker: fix error pos on default value ( #6338 )
2020-09-09 15:34:41 +02:00
Alexander Medvednikov
78e28a72ed
doc: vfmt and make compile
2020-09-09 14:24:42 +02:00
Alexander Medvednikov
cb43084e26
regex: fix compilation
2020-09-09 14:18:06 +02:00
Alexander Medvednikov
ea31f75098
checker: more default field fixes
2020-09-09 14:14:44 +02:00
Alexander Medvednikov
925f1781b3
checker: default field fixes
2020-09-09 14:05:56 +02:00
Alexander Medvednikov
e018509ba6
checker: test for unnecessary default struct field values
2020-09-09 13:59:52 +02:00
Nick Treleaven
eb95a4333a
table: rename Arg to Param ( #6337 )
2020-09-09 13:21:11 +02:00
Swastik Baranwal
ea2b2ebc07
checker: modify error messages for ptrs ( #6325 )
2020-09-09 10:07:58 +02:00
bpryer
3f7970db52
term: add get_cursor_position and set_terminal_title ( #6279 )
...
* added functions
added:
- get_cursor_position()
- set_terminal_title(title string)
* implement term.get_cursor_position and term.set_terminal_title on unix
* Cleanup
* make x,y fields of term.Coord mutable
* fix vrepl compilation
* use more descriptive var names in term_test.v
* do not change the current terminal title in dumb terminals; do not test term.set_terminal_title outside of CI
* unix: in term.set_terminal_title, return true even for dumb terminals
Co-authored-by: Brent Pryer <brent@pryermachine.com>
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-09-08 22:00:10 +03:00
Nick Treleaven
49c322f120
checker: simplify argument qualifier errors ( #6321 )
2020-09-08 19:34:17 +02:00
Ruofan XU
90128ed4ee
cc: add support for tcc backend on windows-i386 ( #6297 )
2020-09-08 15:15:35 +02:00
Larpon
1c5b9db63f
io: introduce a go-like io.util module ( #6323 )
2020-09-08 14:17:01 +02:00
Enzo
18034bb95c
gen: fix multiple call of expression in match ( #6324 )
2020-09-08 00:38:24 +02:00
Uwe Krüger
5258f52497
fmt: add support for `chan` types and operations ( #6328 )
2020-09-08 00:36:05 +02:00
Maciej Obarski
9a5b86e454
arrays: common methods - min, max, idx_min, idx_max, shuffle, merge ( #6177 )
2020-09-07 13:50:53 +02:00
Nick Treleaven
497bf226e2
add TESTS.md file to explain different tests ( #6318 )
2020-09-07 13:48:15 +02:00
Uwe Krüger
2cb711ee15
checker/channels: check `mut`/`&` state of transmitted objects ( #6315 )
2020-09-06 21:24:41 +02:00
Enzo
601d098b48
szip: make compile ( #6314 )
2020-09-06 15:04:27 +02:00
Larpon
51d7d7cfae
os: fix os.mv edge case and Windows style paths ( #6302 )
2020-09-06 13:12:07 +02:00
Alexander Medvednikov
9fbea31f47
autofree: fix exprs N levels deep
2020-09-06 13:02:32 +02:00
Uwe Krüger
047bf02985
builtin: fix `in` for various numeric types ( #6311 )
2020-09-06 12:45:02 +02:00
Larpon
b4b898b769
os: enable is_file tests ( #6312 )
2020-09-06 12:39:02 +02:00
Uwe Krüger
4d2c8a40d6
sync/atomic2: support 32 bit platforms ( #6308 )
2020-09-05 14:44:16 +02:00
Alexander Medvednikov
3410705974
autofree: lots of fixes
2020-09-05 12:00:35 +02:00
Uwe Krüger
b015033c53
builtin: add methods to builtin channels ( #6303 )
2020-09-05 01:36:20 +02:00
Pavel Kolesnikov
246fe3bfb7
builder: cc_linux_cross() fixes ( #6287 )
2020-09-05 01:35:35 +02:00
Xavier B
8ef55bd8c9
checker: add checks for map key/value types ( #6283 )
2020-09-04 23:59:54 +02:00
Larpon
81778e507f
os: is_file() ( #6301 )
2020-09-04 22:27:52 +02:00
Larpon
efa49bfbb7
os: make behave more like Unix "mv" command ( #6300 )
2020-09-04 13:08:47 +02:00
Alexander Medvednikov
333f355e23
Revert "cgen: handle variables called "array""
...
This reverts commit cc714ca5cc
.
2020-09-03 02:43:26 +02:00
Uwe Krüger
b8617ace53
checker: do not allow aliases of `chan` types ( #6294 )
2020-09-03 02:03:31 +02:00
Alexander Medvednikov
cc714ca5cc
cgen: handle variables called "array"
2020-09-03 02:01:21 +02:00
Pavel Kolesnikov
a3ee217537
builder: use tar instead of unzip in cc_linux_cross() ( #6286 )
2020-09-02 10:09:06 +02:00
spaceface777
35cbca96e1
checker: implement `[required]` struct field attribute ( #6276 )
2020-08-31 23:15:40 +02:00
spaceface777
bd304f1141
checker: check number of fields in short struct inits ( #6280 )
2020-08-31 22:17:59 +02:00
spaceface777
60a9d49382
cgen: implement `[export: 'FooBar']` attribute ( #6278 )
2020-08-31 21:52:25 +02:00
Sandro Martini
39da5eca89
vweb: hide debug prints
2020-08-31 19:39:46 +02:00
Uwe Krüger
cbcba2e4cf
parser: enable module auto import (of `sync`) ( #6271 )
2020-08-31 10:44:39 +02:00
florin
b1a8e1e5b2
vweb: escape form key, not only value. ( #6269 )
2020-08-30 19:09:12 +02:00
Xavier B
d33f68ff54
x.websocket: remove debuging leftover ( #6264 )
2020-08-30 19:35:47 +03:00
Nick Treleaven
5d3d14da53
cgen: support `typeof(expr).name` ( #6253 )
2020-08-30 08:56:18 +02:00
Uwe Krüger
c351f8fa47
checker, builtin: prepage for builtin channels ( #6262 )
2020-08-30 08:55:31 +02:00
Delyan Angelov
718a4692dd
os: enable test_write_and_read_bytes again
2020-08-29 07:43:31 +03:00
Uwe Krüger
fe8286c53c
checker: implement implicit conversions/promotions to `rune` ( #6249 )
2020-08-29 01:59:07 +02:00
Maciej Obarski
7bd2804ce9
all: automatic error propagation in place of "or { return(err) }"
2020-08-29 01:58:03 +02:00
Uwe Krüger
4d425b0e6d
fmt: insert space in front of `?` for propagation ( #6250 )
2020-08-29 01:56:43 +02:00
Delyan Angelov
30fc374fc5
os.args: fix os.args[0] when compiling graphical apps on windows
2020-08-28 22:39:52 +03:00
Nick Treleaven
7dbae14e19
checker: error on `mut name =` ( #6247 )
2020-08-28 20:07:32 +03:00
Delyan Angelov
5d18ece661
ci: fix msvc finding (3)
2020-08-28 20:06:41 +03:00
Delyan Angelov
68864d0703
ci: fix msvc finding (2)
2020-08-28 19:58:17 +03:00
Delyan Angelov
317d15dbe9
ci: fix finding the msvc compiler on windows
2020-08-28 19:48:18 +03:00
Delyan Angelov
3d8a35ced6
ci: fix compiler error tests on windows
2020-08-28 19:27:41 +03:00
Delyan Angelov
dde1b89c5e
vup: remove empty new line on unix
2020-08-28 19:09:47 +03:00
Maciej Obarski
2ce5797ec2
os: vfopen returns option now ( #6244 )
2020-08-28 14:24:00 +02:00
Alexander Medvednikov
789674bd5a
tests: autofree: use -experimental flag
2020-08-28 10:22:28 +02:00
Alexander Medvednikov
0890562663
tests: autofree tmp expr test
2020-08-28 10:08:32 +02:00
Swastik Baranwal
39bf02ea68
checker: add error for arr1 <,>,>=,<= arr2 ( #6243 )
2020-08-28 11:08:07 +03:00
Delyan Angelov
88f75fc1d6
builder: cleanup cc.v; log build_thirdparty_obj_files with `-v`
2020-08-28 09:38:52 +03:00
spaceface777
d663f57d43
parser: move flag logic to checker ( #6239 )
2020-08-28 09:24:04 +03:00
Delyan Angelov
5526954fdc
vdoc: cleanup warnings on `./v doc -s vlib`
2020-08-28 09:03:22 +03:00
Delyan Angelov
d80843bf53
vdoc: parse with `enable_globals: true`
2020-08-28 08:53:12 +03:00
Delyan Angelov
0975f3bd4c
vfmt: support `x chan Name` in fn args
2020-08-28 01:54:16 +03:00
Delyan Angelov
8f5ca29fcd
vfmt: support `x := chan Name{cap: 123}`
2020-08-27 23:37:39 +03:00
Alexander Medvednikov
27702b5a5d
fast: update V with v up instead of git pull
2020-08-27 18:07:28 +02:00
Alexander Medvednikov
a14c6c1ffe
autofree: another tmp arg fix
2020-08-27 17:54:36 +02:00
Larpon
d982aa54e8
os: add missing documentation ( #6234 )
2020-08-27 16:57:01 +02:00
spaceface777
eff319f869
comp_for: allow checking full mehod and arg types ( #5997 )
2020-08-27 15:00:44 +02:00
Delyan Angelov
7476428def
vfmt: handle comments after last const field
2020-08-27 15:07:49 +03:00
Delyan Angelov
8f5cefb116
strconv: fix f64_to_str_lnd and f64_to_str_l after 6921d46
2020-08-27 14:22:04 +03:00
Alexander Medvednikov
c01d17fcc4
tests: fix array_test.v
2020-08-27 13:12:04 +02:00
Alexander Medvednikov
15bdb8f7cd
autofree: tmp arg var frees fixes
2020-08-27 11:30:35 +02:00
Delyan Angelov
3b03edd7cb
repl: fix compilation after 6921d46
2020-08-27 12:20:31 +03:00
Delyan Angelov
8b3990225a
v.checker: run vfmt over vlib/v/checker/checker.v
2020-08-27 12:09:08 +03:00
Delyan Angelov
f73506be49
tests: fix some byte->rune errors
2020-08-27 12:08:05 +03:00
Stunx
fa3e95222e
doc: ignore sokol.sapp ( #6228 )
2020-08-27 08:35:04 +02:00
Xavier B
3e9dc578de
checker: disallow interfaces inside sum types ( #6232 )
2020-08-27 08:33:59 +02:00
Alexander Medvednikov
8dcc73993e
net: remove old websocket module
2020-08-27 07:33:59 +02:00
Alexander Medvednikov
6921d46185
all: rune type for `` literals
2020-08-27 06:46:37 +02:00
Delyan Angelov
99dd72efea
tests: add another test for 47f59d3
2020-08-26 11:46:29 +03:00
Delyan Angelov
47f59d3fb6
v.scanner: fix error line numbers when comments end with CRLF
2020-08-26 11:39:32 +03:00
Alexander Medvednikov
84b8e0a7e4
tests: enable live tests on macos
2020-08-26 06:50:32 +02:00
Uwe Krüger
393b46a6dd
channels: make `ch.len` and `ch.cap` available as properties ( #6221 )
2020-08-26 06:41:51 +02:00
Delyan Angelov
7879510ef5
live: fix hot code reloading on macos (use .dylib, not .so)
2020-08-25 21:40:45 +03:00
Alexander Medvednikov
a55bea44da
table: register rune type
2020-08-25 18:15:24 +02:00
Delyan Angelov
cc82ed28f8
tests: enable running fmt_vlib_test.v on != freebsd platforms again
2020-08-25 19:09:47 +03:00
Delyan Angelov
e3f79df3ac
tests: support .vv in compiler_test.v too
2020-08-25 18:52:28 +03:00
Delyan Angelov
55fdae77d5
tests: add .vv support for `v vet` too, and simplify vet_test.v
2020-08-25 18:46:33 +03:00
Delyan Angelov
86dfd3902f
tests: use .vv files directly in compiler_errors_test.v
2020-08-25 18:14:06 +03:00
Delyan Angelov
f259d275fc
tests: bump simple_tcp_client retries to 20
2020-08-25 17:52:44 +03:00
Delyan Angelov
7b7ab580ab
tests: add retry logic in simple_tcp_client in vweb_test.v
2020-08-25 17:05:40 +03:00
Delyan Angelov
1619beda91
tests: fix repl_test.v
2020-08-25 15:59:07 +03:00
Delyan Angelov
ceca1547fb
valgrind: fix valgrind_test.v
2020-08-25 15:48:11 +03:00
Alexander Medvednikov
c8b3cd2957
tests: simplify valgrind tests, remove .vv
2020-08-25 13:58:21 +02:00
Alexander Medvednikov
33b4ff75d0
builder: handle bad extensions and support .vv
2020-08-25 13:32:27 +02:00
Nick Treleaven
818db91a9e
parser: warn if PostfixExpr followed by `]` or `)` token ( #6214 )
2020-08-25 08:50:06 +02:00
Nick Treleaven
479bfa28de
cgen: implement fixed array `.len` property ( #6212 )
2020-08-25 08:48:28 +02:00
Nick Treleaven
8e4ee54070
glm: fix pointer indexing warnings ( #6215 )
2020-08-25 08:48:05 +02:00
Delyan Angelov
995a5fed1f
v.builder: add -DNDEBUG for non debug -prod builds (affects sokol performance)
2020-08-24 23:10:22 +03:00
Delyan Angelov
3efa670d6a
sokol: add new mouse_dx and mouse_dy fields (fix for Android multitouch)
2020-08-24 23:01:14 +03:00
Xavier B
32a894719e
x.openssl: remove printlns ( #6205 )
2020-08-24 17:20:03 +02:00
Nick Treleaven
acc5c95f0d
checker: error with `*expr` if not a pointer ( #6211 )
2020-08-24 17:19:17 +02:00
Alexander Medvednikov
d547f74cb0
checker/cgen: interface smart casts
2020-08-24 11:10:26 +02:00
Maciej Obarski
e8e0d9fa42
all: [direct_array_access] tag ( #6203 )
2020-08-24 09:04:50 +02:00
Alexander Medvednikov
702a80fc5a
x.net: fix new_tcp_socket()
2020-08-24 03:24:00 +02:00
Delyan Angelov
fa8f5df817
sokol: fix compilation of 2048 on some linux distros (undefined XIQueryVersion and XcursorImageCreate)
2020-08-23 22:17:05 +03:00
Delyan Angelov
2e589a5b0b
sokol.audio: add proper #flag for windows (-lole32)
2020-08-23 21:15:59 +03:00
Delyan Angelov
e71aff71ce
sokol.audio: fix compilation on macos (link with -framework AudioToolbox)
2020-08-23 20:55:01 +03:00
Delyan Angelov
dad2c6608e
examples: implement examples/sokol/sounds/wav_player.v
2020-08-23 20:49:37 +03:00
Delyan Angelov
1c9e02094c
sokol.audio: add simple_sin_tones.v example
2020-08-23 15:28:07 +03:00
Alexander Medvednikov
542b149290
sokol: fix examples and remove copy pasta
2020-08-23 07:47:50 +02:00
Alexander Medvednikov
94c3a912ba
gg: update sokol and stb_truetype
2020-08-23 07:25:30 +02:00
Alexander Medvednikov
5407d9b062
gg: fix draw_line on hi dpi screens
2020-08-23 04:57:12 +02:00
Swastik Baranwal
b2e79dbebd
parser: add an error for `import mod.sub as mod` and `import mod as mod` ( #6194 )
2020-08-23 02:12:25 +02:00
Uwe Krüger
61df70fdf5
all: enable `x = <-ch or {...}` ( #6195 )
2020-08-23 02:12:05 +02:00
Alexander Medvednikov
7dfae2384b
builtin: remove asl.h include
2020-08-22 17:22:14 +02:00
Alexander Medvednikov
9e12095111
gg: image: return an optional instead of panic(); darwin: fix nsstring()
2020-08-22 17:09:30 +02:00
Delyan Angelov
0bdb096bfa
x.net: use port 45123 in tcp_test.v, preventing sporadic `socket error 98` conflicts with websocket_test.v
2020-08-22 15:29:29 +03:00
Delyan Angelov
94ced907d2
sort: fix C compilation error for `fn abc(mut a []int) { a.sort() }`
2020-08-22 15:20:49 +03:00
Yarila682
7dde82322a
cgen: fix dereferencing a mutable array ( #6191 )
2020-08-22 12:48:09 +02:00
Daniel Däschle
fcc61a981d
all: TypeSymbol.source_name ( #6187 )
2020-08-22 12:29:15 +02:00
Delyan Angelov
b5ca114a96
ui: fix compiling the calculator ui example with tcc
2020-08-22 12:58:48 +03:00
Nick Treleaven
98c39a37c0
scanner: warn about interpolation for `$f(expr)` ( #6179 )
2020-08-22 05:48:06 +02:00
Alexander Medvednikov
793d2ce6dc
stbi: more clear panic message
2020-08-22 00:51:16 +02:00
Tomas Hellström
fb148e0b61
x.websockets: new websockets module on top of x.net ( #6189 )
2020-08-22 00:50:38 +02:00
Nick Treleaven
1b914d217e
fmt: don't remove `mut` from `if mut` smart cast ( #6188 )
2020-08-22 00:00:02 +02:00
Delyan Angelov
06967d9297
sort: require a mutable receiver
2020-08-21 21:19:37 +03:00
Lukas Neubert
93e6c3df6a
cli: various improvements ( #6180 )
2020-08-20 23:14:53 +02:00
Emily Hudson
b88569c845
x.net: new net module ( #6130 )
2020-08-20 23:01:37 +02:00
Delyan Angelov
9b171b76e0
os: call os.real_path/1 before returning in os.find_abs_path_of_executable/1
2020-08-20 19:23:19 +03:00
Daniel Däschle
0c183da116
checker: fix sort return type ( #6182 )
2020-08-20 17:29:40 +03:00
Delyan Angelov
e8ff94fb8b
net.html: simplify map setting (fixes compilation with tcc on aarch64)
2020-08-20 16:45:54 +03:00
Delyan Angelov
dfc4298125
tests: return early in x64_test.v on non AMD64 machines
2020-08-20 15:42:26 +03:00
Delyan Angelov
8c7bcad6b1
cgen: support for `$if amd64 {}` and `$if aarch64 {}`
2020-08-20 15:28:37 +03:00
Lukas Neubert
6eea13ecc2
clipboard: wrap pointer indexing in unsafe block ( #6178 )
2020-08-20 10:33:12 +02:00
Alexander Medvednikov
9da7349f63
gg: minor fixes
2020-08-20 08:32:05 +02:00
Lukas Neubert
88bca9d17a
clipboard: wrap vstring call in unsafe ( #6170 )
2020-08-19 16:06:23 +02:00
Nick Treleaven
217f04e311
checker: disallow casting to bool, use `some_int != 0` instead ( #6138 )
2020-08-19 14:37:55 +02:00
Alexander Medvednikov
55b025413d
fmt: temporary struct attr fix
2020-08-19 14:33:45 +02:00
Larpon
d9aae023b1
android: initial support for C output using sokol_main ( #6164 )
2020-08-19 11:00:15 +02:00
spaceface777
c1651bd271
gg: fixes and Android support ( #6161 )
2020-08-19 07:10:42 +02:00
jhuntos
c42ca84850
pg: fix array init warnings ( #6163 )
2020-08-19 07:10:09 +02:00
Nick Treleaven
e69f091bbd
parser: require `(` on same line as name token for fn call or cast ( #6160 )
2020-08-19 02:37:17 +02:00
Alexander Medvednikov
51bd69cdd8
cgen: fix u64 in struct str()
2020-08-18 16:05:11 +02:00
Delyan Angelov
7727aad90f
net.http: fix windows compilation warning
2020-08-18 12:14:21 +03:00
Delyan Angelov
2f6757a56a
Revert "cgen: fix all -Wmissing-variable-declarations ( #5802 )"
...
This reverts commit ae349ca6ba
.
Fixing these warnings, unfortunately also means, that hot code
(which reloads a shared library during runtime) can not use V
constants, because the private static C variables in the shared
library will not be initialized by _vinit(), which is only called
by the main V program.
For example in examples/hot_reload/bounce.v, using `gx.blue`,
defined as:
` blue = Color { r: 0, g: 0, b: 255 }`
... will instead use a const with all 0 fields (i.e. a black color).
2020-08-18 11:55:55 +03:00
Delyan Angelov
937a3e14c5
cgen: add g.options_typedefs, g.shared_types, g.channel_definitions
2020-08-18 11:45:36 +03:00
Alexander Medvednikov
40d91cc23b
gg: handle bad image index
2020-08-18 01:08:58 +02:00
joe-conigliaro
c599a4c7de
checker: remove pos+1 on innermost call
2020-08-18 07:39:40 +10:00
Uwe Krüger
0d7cc8829a
cgen: implement channel `push()`/`pop()` using `<-` operator ( #6154 )
2020-08-17 23:35:36 +02:00
JalonSolov
5c98c0760b
gg: use OpenGL on Windows until D3D issues resolved ( #6155 )
2020-08-17 23:34:51 +02:00
Daniel Däschle
b5c1ea44dc
all: fix mutability after if-smartcast ( #6129 )
2020-08-17 21:11:11 +02:00
Nick Treleaven
36c98b3e5d
cgen: implement fixed array 'for in' for lvalue condition ( #6151 )
2020-08-17 21:10:47 +02:00
Swastik Baranwal
46b4e2a0cd
checker: check`match` types ( #6149 )
2020-08-17 20:19:21 +02:00
Sandro Martini
dab639662f
http: fix new warnings ( #6153 )
2020-08-17 20:17:17 +02:00
Irabaruta Freeman
fa11e124dd
term: add documentation ( #6097 )
2020-08-17 20:16:18 +02:00
Uwe Krüger
9a5f040f72
all: handle `<-` arrow token for channel operations ( #6152 )
2020-08-17 20:12:00 +02:00
joe-conigliaro
c01fd4ac58
parser: remove extra scopes from if & match & fix scope end_pos
2020-08-18 01:51:25 +10:00
Nick Treleaven
6ba6a22a77
checker: prevent from casting non-struct to struct ( #6143 )
2020-08-17 11:19:44 +02:00
Uwe Krüger
0c7d73c8b0
sync/channels: use references for `chan mut X` testcase ( #6145 )
2020-08-16 23:01:49 +02:00
Alexander Medvednikov
b2059c481a
checker: fix an incorrect name test
2020-08-16 19:24:00 +02:00
Alexander Medvednikov
f965ddae49
parser: handle several errors in types; cgen: objC includes
2020-08-16 19:16:59 +02:00
Delyan Angelov
191c908f3a
tests/valgrind: vfmt fn_with_return_should_free_local_vars.vv
2020-08-16 13:22:32 +03:00
Delyan Angelov
fbe02c5ae1
tests/valgrind: add skipped fn_with_return_should_free_local_vars.vv (-autofree)
2020-08-16 13:20:02 +03:00
Delyan Angelov
fc7a108366
v.builder: fix quoting when building thirdparty source files
2020-08-16 10:18:14 +03:00
Yarila682
29528196f2
os: close opened file descriptors in `cp()` ( #6142 )
2020-08-16 04:55:10 +02:00
Nick Treleaven
bab5c21224
parser: warn when fixed-size ArrayInit doesn't have trailing `{}`. ( #6137 )
2020-08-16 04:54:05 +02:00
Enzo
a02593204f
checker: forbid aliasing an alias ( #6118 )
2020-08-16 04:53:16 +02:00
Vinicius Rangel
bf065674cc
json: maps, memory leak, and error forwarding ( #6116 )
2020-08-16 02:30:37 +02:00
Delyan Angelov
e7b2aefd36
v.pref: handle `|` as separators in -path option parsing again (as documented in the help)
2020-08-15 22:09:40 +03:00
Uwe Krüger
c2b4c645a1
sync/channels: document more benchmark results ( #6135 )
2020-08-15 11:20:51 +02:00
Nick Treleaven
0f0a91fc9e
parser: support custom fixed size ArrayInit: `[3]int{init: -1}` ( #6114 )
2020-08-15 11:01:54 +02:00
spaceface777
5f3ced7213
builder: only include `os` when building `.vsh` files ( #6134 )
2020-08-14 21:57:32 +02:00
Uwe Krüger
9602a25a0b
all: add builtin channel type `chan elem_type` ( #6126 )
2020-08-14 21:18:42 +02:00
Nick Treleaven
75212f9fab
cgen: error if ForInStmt is not handled ( #6131 )
2020-08-14 21:01:43 +02:00
Daniel Däschle
b2fee21ef3
checker: check struct casting ( #5864 )
2020-08-14 14:57:08 +02:00
Nick Treleaven
6016f28171
cgen: fix assigning ArrayInit to fixed array: `a = [3]int` ( #6115 )
2020-08-14 13:57:00 +02:00
Nick Treleaven
078ab47a9a
cgen: support `==`, `!=` on FixedArray ( #6119 )
2020-08-14 02:03:38 +02:00
Delyan Angelov
2ad2b4c5ba
vweb: add more tests. Fix missing Content-Length: header bug on 404.
2020-08-14 02:49:15 +03:00
Delyan Angelov
712f4bd7f8
vweb: add tests
2020-08-14 00:52:02 +03:00
Alexander Medvednikov
fc1f41fc84
checker: fix a string error test
2020-08-13 23:33:18 +02:00
Alexander Medvednikov
88cde776e7
checker: more clear string error
2020-08-13 23:21:15 +02:00
Delyan Angelov
8580a0bcd7
cgen: run vfmt to silence `./v fmt -verify`
2020-08-13 21:22:52 +03:00
Delyan Angelov
a62307f711
vweb: fix body appending (missing closing json bracket)
2020-08-13 21:07:31 +03:00
Daniel Däschle
64e8125807
cgen: fixe calling anon fn asynchronously ( closes #6088 ) ( #6121 )
2020-08-13 20:06:56 +02:00
Daniel Däschle
34b28cb68a
fmt: fix anon fn call ( #6120 )
2020-08-13 20:05:59 +02:00
Delyan Angelov
1135dffe2d
cgen: prevent generation of duplicate interface method wrappers
2020-08-13 20:56:58 +03:00
spaceface777
2353814821
vweb: fix body size calculation ( #6122 )
2020-08-13 20:55:33 +03:00
Delyan Angelov
da7adb5b1b
ci: fix failing tests for compiler_errors_test.v
2020-08-13 13:16:41 +03:00
Delyan Angelov
fd5a76a8ad
ci: fail compiler_errors_test.v, when at least one of all the parser/checker tests failed
2020-08-13 12:57:16 +03:00
Delyan Angelov
1a96bcf405
ci: fix `v vet` filtering
2020-08-12 20:34:13 +03:00
Alexander Medvednikov
f8be2110ec
sort: fix sorting by struct fields
2020-08-12 18:43:41 +02:00
Alexander Medvednikov
e5e31f7210
sort: handle `.sort(a.field > b.field)`
2020-08-12 06:11:40 +02:00
Alexander Medvednikov
4bc0dde413
all: new `.sort(a < b)` syntax
2020-08-12 05:54:51 +02:00
Alexander Medvednikov
9800cf1e7b
checker: improve array errors; gg: remove unused imports
2020-08-12 03:54:17 +02:00
Uwe Krüger
bb93bf34ec
sync/semaphores: use dispatch semaphores on MacOS ( #6110 )
2020-08-12 03:45:09 +02:00
Delyan Angelov
ca7a64a451
cgen: add support for -g again
2020-08-12 02:05:45 +03:00
Uwe Krüger
433610b5c0
sync/channels: provide `.cap` and `.len()` ( #6104 )
2020-08-11 17:52:13 +02:00
Swastik Baranwal
9fdb1701e0
checker: add a check for str[i] = `a` ( #6107 )
2020-08-11 17:41:54 +02:00
Alexander Medvednikov
99798b83b4
parser: fix match/else check
2020-08-11 17:30:37 +02:00
Alexander Medvednikov
c5aa2bfa51
tests: fix a match test
2020-08-11 16:26:52 +02:00
Alexander Medvednikov
1a9dba0005
checker: make << shifts work with custom number types
2020-08-11 01:05:34 +02:00
Alexander Medvednikov
2dd82748e0
checker: simplify << error message
2020-08-11 01:01:33 +02:00
Alexander Medvednikov
6d72209363
checker: minor c2v fixes
2020-08-11 00:51:15 +02:00
Alexander Medvednikov
11113e43e7
checker: a minor perf fix
2020-08-10 23:59:42 +02:00
Nick Treleaven
d8d82a0be4
checker: make `has_return` fn more efficient ( #6103 )
2020-08-10 23:59:08 +02:00
Alexander Medvednikov
88988817d0
parser: minor `match` simplification
2020-08-10 19:54:38 +02:00
Uwe Krüger
c3cdfa1c96
sync/channels: provide `try_push(), try_pop() as public methods ( #6101 )
2020-08-10 18:06:42 +02:00
Delyan Angelov
36eae1c175
builtin: x.vstring() instead of string(x) ( #6102 )
2020-08-10 18:05:26 +02:00
Delyan Angelov
eba413853f
compiler_errors_test.v: use work.close() instead of sentinel tasks
2020-08-10 15:26:54 +03:00
Nick Treleaven
5e2824e2f2
vfmt: align field attributes (when no inline comment after type) ( #6089 )
2020-08-10 13:13:42 +03:00
Delyan Angelov
bd32f0969f
parser: enable CamelCase named method names for JS. objects
2020-08-10 10:39:14 +03:00
Uwe Krüger
20a65cf9c8
sync/channels: implement `close()` method ( #6098 )
2020-08-10 06:22:20 +02:00
Nick Treleaven
fce106cf83
parser: use Attr.arg field for `[name: arg]` ( #6084 )
2020-08-10 02:00:14 +02:00
Sandro Martini
c7fae4dd6f
vweb: add set_status() ( #6087 )
2020-08-09 18:05:06 +02:00
Nick Treleaven
2dd90de993
parser: error on `[unsafe_fn]` ( #6090 )
2020-08-09 12:22:11 +03:00
Alexander Medvednikov
200f8dacb7
[]byte.str2() => bytestr()
2020-08-09 04:22:42 +02:00
Alexander Medvednikov
94f4dfe85b
builtin: a temporary []byte.str2() (until runes are implemented)
2020-08-09 04:20:43 +02:00
João Victor Oliveira Couto
f6a85d5305
net.html: create html parser module ( #6076 )
2020-08-09 04:13:34 +02:00
Louis Schmieder
97fec78b40
io: input/output streams ( #6078 )
2020-08-09 04:12:29 +02:00
Alexander Medvednikov
64f218e943
string: fix all cap .title() test
2020-08-09 04:09:48 +02:00
Alexander Medvednikov
c65dbe51d6
parser: c2v fixes
2020-08-09 03:58:14 +02:00
Nick Treleaven
6cc8815931
parser: support [unsafe] instead of [unsafe_fn] ( #6066 )
2020-08-08 16:24:05 +02:00
Maciej Obarski
2a4ef2acbd
regex: new options returning interface to the regex module ( #6062 )
2020-08-08 09:04:12 +03:00
Delyan Angelov
55b8cc1bb2
tests: parallelize compiler_errors_test.v using channels & threads
2020-08-07 16:44:49 +03:00
Delyan Angelov
34d03801de
tests: run ws_test.v only with -d network
2020-08-07 10:14:40 +03:00
Alexander Medvednikov
ce4ee2b247
v0.1.29
2020-08-06 19:36:52 +02:00
Delyan Angelov
4568ce8f00
builtin: add sanity check on the number of returned frames by C.backtrace
2020-08-06 19:50:29 +03:00
Uwe Krüger
d63daa0798
sync: use `mfence` on windows-tcc ( #6079 )
2020-08-06 17:31:05 +02:00
Alexander Medvednikov
ea76a33b43
remove freetype references everywhere
2020-08-06 17:23:57 +02:00
Uwe Krüger
863cf8af60
sync: channel implementation ( #6074 )
2020-08-06 15:28:19 +02:00
Larpon
09f1362305
os: let temp_dir adhere to posix/fhs version 3.0 on linux and mac ( #6069 )
2020-08-05 19:02:57 +02:00
Delyan Angelov
d1257f5590
tests/valgrind: add skipped fn_returning_string_param.vv (-autofree)
2020-08-05 19:35:18 +03:00
Delyan Angelov
6c27ce58ed
v.util.vtest: extract the common code for VTEST_ONLY in a single place
2020-08-05 19:34:27 +03:00
Alexander Medvednikov
ecaccafd31
gg: image cache
2020-08-05 16:00:24 +02:00
Alexander Medvednikov
67aafd03c6
gg: fix image rendering
2020-08-05 14:34:28 +02:00
spaceface777
bf20d6d3db
builder: don't panic if msvc rootdir isn't found ( #6068 )
2020-08-05 13:22:10 +03:00
Delyan Angelov
f331f63f53
ci: fix windows build
2020-08-05 09:09:18 +03:00
Delyan Angelov
5874d7c5ab
os: add os.getpid(), use it in os.is_writable_folder on windows
2020-08-05 09:04:40 +03:00
Delyan Angelov
7b1944c2da
gg: simplify the image_cache
2020-08-05 08:46:20 +03:00
Delyan Angelov
221a777a80
gg: cache sokol C.sg_image handles
2020-08-05 08:09:25 +03:00
Delyan Angelov
ab7936f514
os.exec: on unix return error, when the command was not found, instead of os.Result
2020-08-05 07:11:51 +03:00
Maciej Michalec
449c98e861
scanner: floats without fraction ( fix #5262 ) ( #6064 )
2020-08-05 05:11:29 +02:00
Alexander Medvednikov
f3ebd3a6e7
gg: fix image rendering
2020-08-05 03:15:40 +02:00
Enzo
f238890fe9
compiler: move attributes to declarations ( #6026 )
2020-08-04 20:10:22 +02:00
Nick Treleaven
3ce6dd6cbc
hash: use match expression with ranges ( #6046 )
2020-08-04 20:09:58 +02:00
Delyan Angelov
3dfe242dbb
vfmt: add a regression test for `type SocketMessageFn = fn (mut c Client, msg &Message) ?
2020-08-04 16:13:04 +03:00
Delyan Angelov
cd9bb51af2
vfmt: fix 6040 (part 2)
2020-08-04 16:08:47 +03:00
Delyan Angelov
f9d241ae27
gg,stbi: implement gg.create_image_from_memory/2
2020-08-04 13:18:08 +03:00
Delyan Angelov
216b6bf285
gg: remove tracing println in draw_image
2020-08-04 12:57:54 +03:00
Delyan Angelov
9ce75e10d5
gg: free gg.create_image from having to be called by sokols init_fn callback
2020-08-04 12:37:28 +03:00
Swastik Baranwal
f3817c47f9
token: remove switch keyword ( #6056 )
2020-08-04 11:04:07 +02:00
Delyan Angelov
f7a0d0a02f
ci: fix -autofree compilation of vlib/v/tests/valgrind/strings_and_arrays.vv
2020-08-04 11:30:02 +03:00
Alexander Medvednikov
60c642f42d
gg: clean up draw_image()
2020-08-04 01:26:56 +02:00
Alexander Medvednikov
7a7572e478
autofree: free temp string exprs
2020-08-04 01:26:34 +02:00
Nick Treleaven
c33dbbc216
fmt: don't add newlines for UnsafeExpr ( #6048 )
2020-08-04 00:29:10 +02:00
Delyan Angelov
e291c38119
ast: add use case comment for MatchExpr.var_name
2020-08-03 22:10:59 +03:00
Swastik Baranwal
c547e8b191
v/fmt: fix formatting of `type Foo = fn (a int)?` ( #6047 )
2020-08-03 19:28:48 +03:00
dils2k
8dede3b535
builder: add a verror, when the output folder is not existing and writable ( #5966 )
2020-08-03 18:19:36 +03:00
Nick Treleaven
3e4df7f140
v/fmt: fix dropping `as ident` from `if sum is T` statement ( #6049 )
2020-08-03 18:16:06 +03:00
Carlos Esquerdo Bernat
66b3fabeef
log: avoid the deprecated .is_opened() method ( #6039 )
2020-08-03 02:35:08 +03:00
Delyan Angelov
0ac30a8d9c
gg: enable image transparency in gg.draw_image2 too
2020-08-03 00:30:08 +03:00
Delyan Angelov
a7ca1682c4
gg: fix gg.draw_image2 (image drawn, but without transparency for now)
2020-08-02 23:47:37 +03:00
Delyan Angelov
0b6b0aca09
parser: fix infinite loop on unexpected $ between statements
2020-08-02 18:17:38 +03:00
Alexander Medvednikov
79b70006e6
examples: simplify gg/rectangles.v
2020-08-02 17:01:10 +02:00
Delyan Angelov
c6ae322f85
parser: add hard limit to the number of statements in a fn
2020-08-02 17:58:05 +03:00
Nick Treleaven
8dcc3cda97
os.cp: fix returning false error on Windows ( #6037 )
2020-08-02 14:08:45 +03:00
Nick Treleaven
7f447bb82f
ast: use Block instead of UnsafeStmt ( #5981 )
2020-08-02 14:06:44 +03:00
Alexander Medvednikov
cc57b52773
gg: fix typo
2020-08-01 23:52:15 +02:00
Alexander Medvednikov
149de958f3
gg: fix compilation
2020-08-01 23:45:36 +02:00
Alexander Medvednikov
a1593e7db8
checker: 1 line v fmt fix
2020-08-01 23:41:32 +02:00
Alexander Medvednikov
fb4550e582
gg: new create_image() (part 1)
2020-08-01 23:40:28 +02:00
Swastik Baranwal
d56d622a43
checker: add checks for byte casting ( #5917 )
2020-08-01 23:17:00 +02:00
Carlos Esquerdo Bernat
d71c11577a
os: move file logic to file.v ( #6013 )
2020-08-01 23:07:37 +02:00
Duarte Roso
055117dc5f
builtin: make byte.hex() two digits format ( #5886 )
2020-08-01 23:06:08 +02:00
spaceface777
4f37202b72
checker: allow struct fields starting with capitals in builtin ( #5998 )
2020-08-01 23:01:40 +02:00
spaceface777
1feca22e28
jsgen: don't generate `JS.` struct decls ( #6035 )
2020-08-01 22:27:25 +02:00
Alexander Medvednikov
adafd24819
gen: auto_str_methods.v
2020-08-01 16:36:12 +02:00
Delyan Angelov
0fb8074353
cgen: add support for `$if gcc {}` too
2020-07-31 21:25:37 +03:00
joe-conigliaro
1ea511b530
builder/cgen: get -usecache working for self cimpilation
2020-07-31 20:10:19 +10:00
Nick Treleaven
eb47ce1e83
ast: fix ParExpr.str(), RangeExpr.str(), SizeOf.str() ( #6023 )
2020-07-31 02:31:01 +02:00
Louis Schmieder
1fd499ed4a
vweb: fix request checking ( #6027 )
2020-07-31 01:26:56 +02:00
Delyan Angelov
91c9c0c917
checker: fix unknown_method_suggest_name.out test result too
2020-07-30 19:37:36 +03:00
Delyan Angelov
65891f54ed
v.util.suggestions: fix hash.crc32.Crc32 case
2020-07-30 19:35:16 +03:00
Delyan Angelov
f300f787f3
checker: add suggestions for method mispellings and unknown types
2020-07-30 18:48:16 +03:00
Delyan Angelov
2c45e601ef
builder: increase backtrace size with tcc to 25 frames
2020-07-30 16:56:58 +03:00
Delyan Angelov
3883c34b8c
vfmt: fix eating of `n` in `string(x,n)`
2020-07-30 12:15:04 +03:00
Lukas Neubert
f2c639c869
builtin: add string.contains_any() ( #5963 )
2020-07-29 21:48:50 +02:00
Alexander Medvednikov
f269cbdc94
Revert "parser: Support `unsafe(expr)` ( #5973 )"
...
This reverts commit 19c226fcf8
.
2020-07-29 21:41:47 +02:00
Delyan Angelov
9c9533dad9
checker: add error for `fn f() Struct { return &Struct{} }` ( #6019 )
2020-07-29 21:40:43 +02:00
Delyan Angelov
81f8e910e6
compiler: remove space at the end of warn/error messages to minimize diff churn
2020-07-29 20:37:55 +03:00
Swastik Baranwal
4500e7131e
checker: add a checker error for fn calls on left side of an assignment ( #5993 )
2020-07-29 18:33:00 +03:00
Carlos Esquerdo Bernat
7b630f0350
ws: send unsolicited pong control frame on connect in ws_test.v ( #6010 )
2020-07-29 18:11:24 +03:00
Carlos Esquerdo Bernat
2f2463a04c
ws: make Client.state `pub mut` ( #6009 )
2020-07-29 17:52:33 +03:00
Alexander Medvednikov
280afb2282
builder: rename `a` to `args`
2020-07-28 22:33:33 +02:00
Leah Lundqvist
51c9b49d3f
iOS: basic building and running ( #5999 )
2020-07-28 22:27:38 +02:00
Ruofan XU
1d59d35129
cgen: fix sum type match ( #5978 )
2020-07-28 22:17:25 +02:00
Delyan Angelov
e06448b616
eventbus: update test and docs too
2020-07-28 19:08:16 +03:00
Carlos Esquerdo Bernat
0539b2a7ea
eventbus: removed check on publish, always use receiver, args, sender order for callbacks ( #5940 )
2020-07-28 18:48:25 +03:00
Delyan Angelov
9c028bb299
checker: fix passing enum to a method expecting string
2020-07-28 13:50:40 +03:00
Delyan Angelov
228486555c
http: add pub to Method.str()
2020-07-28 12:34:29 +03:00
Delyan Angelov
5bf3b6eda3
gg: fix running tetris and ui examples on linux
2020-07-28 12:12:44 +03:00
Carlos Esquerdo Bernat
49a7a835c7
ws: update README.md ( #5983 )
2020-07-28 11:22:03 +03:00
Nick Treleaven
19c226fcf8
parser: Support `unsafe(expr)` ( #5973 )
2020-07-28 11:20:52 +03:00
Enzo
d7ed3cd8b7
fmt: fix SQL formatting in ORM expressions - remove trailing spaces ( #5996 )
2020-07-28 11:09:42 +03:00
Carlos Esquerdo Bernat
28657fe7cb
http: handle all of the http.Method values in .str() ( #6002 )
2020-07-28 10:39:10 +03:00
Swastik Baranwal
8b66816bdc
scanner: more checks for `_` as num_sep ( #5992 )
2020-07-28 16:09:19 +10:00
joe-conigliaro
5d49034c31
http: backend_windows - use Method enum in ssl_do()
2020-07-28 14:35:21 +10:00
joe-conigliaro
395e886b2e
http/vweb: use Method enum & add helpers
2020-07-28 14:13:19 +10:00
Alexander Medvednikov
fec9920b1a
http: replace method string with an enum
2020-07-27 21:20:23 +02:00
Alexander Medvednikov
65159b8070
gg: bold/mono/italic fonts
2020-07-27 21:20:23 +02:00
joe-conigliaro
61c1c4a690
checker: add error for invalid sum type cast `MySt{1}`
2020-07-28 01:04:04 +10:00
Enzo
2de1437a1e
ci: vet all files from the compiler ( #5994 )
2020-07-27 12:15:29 +02:00
joe-conigliaro
1086150ab9
builder: add comment to parse_imports `re: dup file parsing`
2020-07-27 12:06:48 +10:00
Alexander Medvednikov
3d19167628
http: fix cookies (part 2)
2020-07-26 22:01:25 +02:00
Alexander Medvednikov
cf4235ab65
http: fix cookies
2020-07-26 15:54:21 +02:00
Delyan Angelov
88345d759a
tests: add support for skipping to valgrind_test.v
2020-07-26 16:09:58 +03:00
Ruofan XU
7027b2354b
cgen: fix array and map with fns ( #5938 )
2020-07-26 14:22:02 +02:00
Delyan Angelov
dfa01d8877
rand: add rand.ulid_at_millisecond/1, use it in rand.ulid/0
2020-07-26 14:17:29 +03:00
penguindark
7d52d612ce
rand: add rand.ulid() ( #5979 )
...
* removed debug println
* added newline to the end of the file
* time: add .unix_time_milli() method; rand,time: add tests
* rand: add more ulid tests; move tests to a separate file random_identifiers_test.v
* run vfmt over vlib/rand/random_identifiers_test.v
* speed up time.unix_time_milli
* simplify and speedup time.unix_time/0 and time.new_time/1
* update comment about rand.ulid()
* fix terminating 0 off by 1 issue in rand.ulid()
* optimize time.new_time()
* restore the master version of vlib/time/parse.v
* make test_unix_time more robust
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-07-26 13:10:56 +03:00
Delyan Angelov
9e652c4f40
ci: fix remaining failing tests. Do mut ptr check only outside unsafe{} blocks.
2020-07-26 10:59:07 +03:00
Delyan Angelov
9d056168ae
ci: fix failing tests
2020-07-26 10:48:24 +03:00
Delyan Angelov
a7f484d9a7
tests: make output of vlib/v/compiler_errors_test.v more readable
2020-07-26 10:47:55 +03:00
Carlos Esquerdo Bernat
1f8ae5d12c
websocket: add tests ( #5967 )
2020-07-25 22:25:31 +02:00
Alexander Medvednikov
6796b93abd
tests: fix compiler_errors_test.v
2020-07-25 22:20:10 +02:00
Delyan Angelov
6fcc6cdc75
rand: add comments for rand.uuid_v4, apply some more perf tweaks
2020-07-25 21:39:54 +03:00
Delyan Angelov
ee3ebed23c
rand: further speed up of rand.uuid_v4
2020-07-25 20:21:44 +03:00
Delyan Angelov
3d2fd471b6
ci: prepare for enabling compilation with g++ again
2020-07-25 20:20:49 +03:00
Alexander Medvednikov
7c86156be5
checker: fix unsafe tests
2020-07-25 18:58:23 +02:00
Alexander Medvednikov
34907f7605
checker: do not allow assigning immutable refs to mutable vars
2020-07-25 18:32:36 +02:00
Delyan Angelov
a552674254
vvet: fix segfault on `v vet .`
2020-07-25 15:57:57 +03:00
Delyan Angelov
d5b837e808
rand: speed up rand.uuid_v4() ~7x, with -prod
2020-07-25 13:09:05 +03:00
Delyan Angelov
c1e14b451e
builder: show timing info in bold; also add a `checker summary:` line with -stats
2020-07-25 10:32:29 +03:00
Alexander Medvednikov
3c1427a4e8
all: fix current module in build-module mode
2020-07-25 01:37:54 +02:00
Louis Schmieder
b58b15993c
gen: compile time for (methods and fields) ( #5957 )
2020-07-25 00:02:44 +02:00
Lukas Neubert
2ccb28a93e
checker: run vfmt over checker.v ( #5965 )
2020-07-24 20:12:01 +03:00
Delyan Angelov
289974dd15
rand: use time microseconds too in default rand initialization; generate proper uuid_v4
2020-07-24 14:33:58 +03:00
Delyan Angelov
c429fa7e27
rand: add test for rand.uuid_v4()
2020-07-24 14:01:48 +03:00
Delyan Angelov
bba0edf9a3
rand: add rand.uuid_v4()
2020-07-24 13:59:24 +03:00
Delyan Angelov
bfca55b87a
examples: fix `v build-examples`
2020-07-24 13:29:47 +03:00
Delyan Angelov
8c4429c875
parser: fix passing the is_mut flag of anon fn arguments
2020-07-24 11:27:56 +03:00
Delyan Angelov
d204c926a8
tests: fix compilation of if_smartcast_test.v
2020-07-24 10:30:22 +03:00
pancake
04ef2a2671
os: implement os.system for iOS and uncomment the `$if ios` blocks ( #5947 )
2020-07-24 10:17:32 +03:00
Delyan Angelov
921b5cddd0
live: fix compilation
2020-07-24 08:45:28 +03:00
Delyan Angelov
d31142ac3e
vfmt: fix compilation after the more strict mutability check
2020-07-24 08:43:18 +03:00
Delyan Angelov
d83e2ee330
websocket: fix compilation after the more strict mutability check
2020-07-24 08:41:14 +03:00
Delyan Angelov
346cc5ca2c
term: fix panic in term.header, when cols,rows from get_terminal_size are < 2
2020-07-24 08:34:39 +03:00
Delyan Angelov
c2083203b3
v.util: fix util.emanager.set_support_color
2020-07-24 08:31:05 +03:00
Alexander Medvednikov
ec443c65a8
tests: fix some tests
2020-07-24 01:55:55 +02:00
Alexander Medvednikov
d2675b89c0
builtin: fix a mutable var on windows
2020-07-23 23:18:45 +02:00
Alexander Medvednikov
632e27a4a9
all: fix a big mutability bug and update all mutable vars
2020-07-23 23:16:36 +02:00
Alexander Medvednikov
32c1042ac6
parser: disable the duplicate import check for now
2020-07-23 22:20:00 +02:00
Alexander Medvednikov
653d40bfe8
parser: do not duplicate table imports
2020-07-23 21:59:48 +02:00
pancake
b7bdb97f7d
term: fix crash in `header` when divider.len < 2 ( #5956 )
2020-07-23 18:54:29 +02:00
Louis Schmieder
b537d8e23e
parser: comp `for` attrs array ( #5903 )
2020-07-23 17:19:37 +02:00
Carlos Esquerdo Bernat
7a4c27bd08
log: add flush to log file ( #5942 )
2020-07-23 08:02:53 +03:00
pancake
36352085ae
v: add support for iOS crosscompilation ( #5943 )
2020-07-23 07:58:44 +03:00
Emily Hudson
0f98445f7f
cgen: properly handle more multi-return edge cases ( #5933 )
2020-07-23 00:39:19 +02:00
Uwe Krüger
6586a9a657
fmt: give braced sub expressions a higher priority ( #5941 )
2020-07-23 00:32:34 +02:00
Delyan Angelov
37c6f6ab1b
vfmt: fix compilation with -prod
2020-07-22 21:43:20 +03:00
Delyan Angelov
276c1de190
unsafe: tag with unsafe{} some more pointer manipulations
2020-07-22 21:42:51 +03:00
Delyan Angelov
949ed90b51
utf8: fix a panic in utf8.len("pippo"), mark with `unsafe{}` direct pointer manipulations
2020-07-22 21:15:27 +03:00
Lukas Neubert
4096432a1d
cli: prevent need for unsafe block ( #5937 )
2020-07-22 20:53:49 +03:00
Ryan Willis
938e71b468
v: fix for `import cli { Command }`
2020-07-22 20:33:43 +03:00
Nick Treleaven
ee349691f9
v/checker: Warn about pointer indexing outside unsafe {} ( #5918 )
2020-07-22 20:28:53 +03:00
joe-conigliaro
d46a89b90d
parser/checker/fmt: optimize scope lookups by storing object with ident & add if expr smartcast support to vfmt ( #5935 )
2020-07-23 02:10:31 +10:00
Delyan Angelov
ebbc7bd471
examples: fix crash when running examples/ws/client.v outside of valgrind
2020-07-22 18:42:57 +03:00
Carlos Esquerdo Bernat
b0d76c59f7
websocket utf8: move utf8 functions from websocket to encoding.utf8, add utf8_test.v (4/4) ( #5924 )
2020-07-22 18:36:24 +03:00
Carlos Esquerdo Bernat
635c99e2ed
ws: obtain port when not specified ( #5922 )
2020-07-22 17:35:30 +03:00
Carlos Esquerdo Bernat
0d8ebf5845
websocket: use log instead submodule logger (1/4) ( #5921 )
2020-07-22 17:31:22 +03:00
Ruofan XU
0f72328d1f
cgen: minor generated C source format fix
2020-07-22 17:27:37 +03:00
Carlos Esquerdo Bernat
f09e14a2b9
csv: cleanup reader_test.v
2020-07-22 17:26:26 +03:00
Emily Hudson
1476602f99
builder: pass define flags to msvc ( #5931 )
2020-07-22 17:24:12 +03:00
Ruofan XU
a370dd2867
cgen: further fixes to and array/map of fns ( #5916 )
2020-07-22 02:30:44 +02:00
kalapalo
c3a2e9b5c4
cgen: fix sum type assignment with pointers ( #5868 )
2020-07-22 02:28:49 +02:00
spaceface777
f4251dded0
checker: suggest using `:=` when assigning to undefined variable ( #5911 )
2020-07-21 19:49:53 +03:00
Delyan Angelov
8b930b4888
builder: measure msvc execution too
2020-07-21 19:45:50 +03:00
Delyan Angelov
14fd7d93ca
v.pref: fix `v build file.v`
2020-07-21 19:36:58 +03:00
Delyan Angelov
6dd1494008
encoding.base64: use fixed static arrays for the ending_table and index consts
2020-07-21 17:56:19 +03:00
Delyan Angelov
4cb9e651a6
vfmt: fix `sizeof(C.Type)`
2020-07-21 16:28:30 +03:00
Delyan Angelov
e1eb9c4ff1
vfmt: fix `x := *&int(ptr)`
2020-07-21 15:58:17 +03:00
Delyan Angelov
35df792c05
vfmt: fix `#include "@VROOT/path/x.h"`
2020-07-21 14:26:49 +03:00
Delyan Angelov
8f23accc4e
time: add .format_ss_milli and .format_ss_micro methods
2020-07-21 11:58:33 +03:00
Delyan Angelov
0af415fa28
vlib: add unsafe{} wrappers to C. fn calls, to allow compiling with -prod again
2020-07-21 09:05:31 +03:00
Carlos Esquerdo Bernat
6dbc143d67
websocket: move ws example to examples folder ( #5875 )
2020-07-21 00:55:58 +02:00
Alexander Medvednikov
303b65c0b9
roadmap: io streams
2020-07-20 22:51:17 +02:00
Alexander Medvednikov
059722f211
checker: minor vfmt run
2020-07-20 22:30:09 +02:00
Nick Treleaven
15ca64d81d
tests: rename pointer_arithmetic_should_be_checked.vv -> unsafe_required.vv ( #5897 )
2020-07-20 23:04:22 +03:00
Nick Treleaven
a74cbf55c7
checker: warn if C.m* or C.s* functions are called outside unsafe blocks ( #5869 )
2020-07-20 20:06:41 +03:00
spaceface777
1a5236e53d
jsgen: export module through commonjs ( #5895 )
2020-07-20 19:57:13 +03:00
Ruofan XU
88c8e194d0
cgen: fix map and array with fns ( #5894 )
2020-07-20 19:53:02 +03:00
Nick Treleaven
e6fc8eb015
checker: check that array slicing indexes are valid ( #5892 )
2020-07-20 19:52:03 +03:00
Enzo
8653605b0a
fmt: allow for comments in call args and if expressions branches ( #5871 )
2020-07-20 17:48:33 +03:00
Nick Treleaven
fb76e02c59
builtin: speed up string.clone() by using C.memcpy ( #5837 )
2020-07-20 17:44:35 +03:00
Carlos Esquerdo Bernat
c60948e52e
runtime: simplify nr_cpus(), add a test for nr_jobs()
2020-07-20 17:36:44 +03:00
Delyan Angelov
fb4c3ff31a
tests: split unsafe.v to vlib/v/tests/unsafe_test.v and a checker output .vv&.out test
2020-07-20 16:53:27 +03:00
Carlos Esquerdo Bernat
60997b3052
net.http: wrap unsafe{} around req.headers.free() ( #5891 )
2020-07-20 15:39:46 +03:00
Delyan Angelov
c858978348
cgen: add support for `-d trace_gen` too. Add `v tracev` command.
2020-07-20 12:36:27 +03:00
Delyan Angelov
587b9dd8aa
tests: reduce iterations for the atomic and semaphore tests, to speed up test-fixed
2020-07-20 11:14:55 +03:00
Ruofan XU
9f6aacb739
cgen: fix array of fns init ( #5884 )
2020-07-19 21:44:03 +02:00
Louis Schmieder
bb60fe2ccf
vweb: implement cookie expiration date ( #5873 )
2020-07-19 21:42:50 +02:00
Enzo
8a855ccae1
fmt,vet: handle `var in [single_value]` ( #5882 )
2020-07-19 19:58:34 +02:00
Delyan Angelov
9c3aa8bfc3
sqlite: add more detailed C.sqlite3_ APIs
2020-07-19 19:14:40 +03:00
Ryan Willis
1114fd28d0
all: import individual symbols feature ( #5872 )
2020-07-18 21:34:38 +02:00
Delyan Angelov
de0fc53d62
CI: fix failing tests because of hash.wyhash duplicates
2020-07-18 15:27:57 +03:00
Delyan Angelov
ca8344460a
cli: fix failing test on macos/windows
2020-07-18 15:02:05 +03:00
XeGrox
e5a508c0d7
checker: fix inability to access aliased struct fields ( #5861 )
2020-07-18 13:58:16 +02:00
Alexander Medvednikov
74d70b8719
all: more cached moduels fixes
2020-07-18 13:49:03 +02:00
Delyan Angelov
3a4f2dfe8b
cli: extract improvements to vlib/cli, based on PR 5616 (without cmd/v2)
2020-07-18 14:24:29 +03:00
Alexander Medvednikov
7ab6899538
builtin: fix compilation (part 1)
2020-07-18 11:17:29 +02:00
Alexander Medvednikov
38e5569503
all: cached modules fixes
2020-07-18 11:15:44 +02:00
Nick Treleaven
105a0e015e
checker: warn if unsafe method called outside unsafe block ( #5863 )
2020-07-17 19:14:12 +02:00
Enzo
90d9040e6e
all: make comment expressions + fix vfmt array init ( #5851 )
2020-07-17 19:13:22 +02:00
Nick Treleaven
39f90e25f3
all: `if` guard optional: define `err` in `else` branch ( #5853 )
2020-07-17 19:10:01 +02:00
Uwe Krüger
ea322bdd97
checker, cgen: fix call of generic function returning normal type ( #5865 )
2020-07-17 18:28:45 +02:00
Ryan Willis
e804ba5294
vfmt: add support for VDIFF_TOOL, detect more diffing tools ( #5857 )
2020-07-17 14:03:07 +03:00
Uwe Krüger
f6947d111b
parser: fix `sizeof(int)` when used as call arg for external function ( #5855 )
2020-07-17 11:31:35 +03:00
spaceface777
3583302ad4
parser: force `...` rather than `..` in matches for inclusive ranges ( #5852 )
2020-07-17 11:30:21 +03:00
Lukas Neubert
fa03f390b3
parser: add error for `for i := 0; i++; i < ..` ( #5850 )
2020-07-17 10:31:58 +03:00
Ryan Willis
82e2b1ec33
strconv: use import instead of module in test files ( #5856 )
2020-07-17 02:35:42 +02:00
Alexander Medvednikov
69ef43ba00
vweb: fix ip()
2020-07-16 21:23:35 +02:00
Alexander Medvednikov
cb1009d91b
strconv: more fixes
2020-07-16 20:55:15 +02:00
Alexander Medvednikov
f1b4af33ac
tests: atof_test fix
2020-07-16 19:50:09 +02:00
Alexander Medvednikov
9b2cbdacc6
vfmt: verify
2020-07-16 19:46:03 +02:00
Alexander Medvednikov
a989e017fe
tests: fix f32_f64_to_string_test.v
2020-07-16 19:41:01 +02:00
Alexander Medvednikov
e4fac6ff97
autofree: fix scope position
2020-07-16 19:40:14 +02:00
Alexander Medvednikov
dc89a914ea
cc: build-module/module cache fixes; strconv: move all code in one module
2020-07-16 19:01:56 +02:00
Ryan Willis
f66967a88c
vsymlink: real Windows symbolic link, fallback to batch, make.bat updates ( #5841 )
2020-07-16 18:33:26 +02:00
Swastik Baranwal
f3a505b558
scanner: add check for `_` in num literals ( #5849 )
2020-07-16 17:29:07 +03:00
spaceface777
b900577dae
compiler: handle ranges as `match` conditions ( #5847 )
2020-07-16 16:41:18 +03:00
joe-conigliaro
612fe1b8fb
cgen: autofree scope var position fixes
2020-07-16 20:06:50 +10:00
Alexander Medvednikov
6245876806
vweb: ip()
2020-07-16 00:48:14 +02:00
Nick Treleaven
f5e6a83a05
builtin: unsafe vlib pointer indexing ( #5836 )
2020-07-15 21:56:50 +02:00
Alexander Medvednikov
c563168d69
rand: string()
2020-07-15 21:36:09 +02:00
Nick Treleaven
4b0ded0475
checker: Warn instead of error for pointer arithmetic ( #5840 )
2020-07-15 19:59:39 +02:00
Delyan Angelov
1873a0cb6d
builder: pass -g3 for -cg
2020-07-15 12:46:24 +03:00
Enzo
2ee8f93d60
parser: duplicate method declaration on interface ( #5825 )
2020-07-15 10:23:21 +02:00
Uwe Krüger
8df6e59678
sync: add semaphores ( #5831 )
2020-07-15 10:22:33 +02:00
Delyan Angelov
cf7d03bda6
builtin: implement array.pop()
2020-07-14 20:01:39 +03:00
Enzo
de0b96f52c
parser: fail when interface name is duplicated ( #5828 )
2020-07-14 18:52:51 +02:00
Enzo
d301611de7
fmt: interface decl fixes ( #5829 )
2020-07-14 18:52:28 +02:00
Alexander Medvednikov
60ce938149
builder: make builtin, strconv, os work with `v build-module`
2020-07-14 18:27:14 +02:00
Delyan Angelov
5ad957f270
vfmt: fix formatting for `x, _ := f()`
2020-07-14 19:11:16 +03:00
Delyan Angelov
e23925f2be
pref: add -show-timings option
2020-07-14 18:47:40 +03:00
Alexander Medvednikov
06f5279f77
checker: fix multi_const_field_name_duplicate test
2020-07-14 17:44:08 +02:00
Alexander Medvednikov
899c69caf1
checker: fix dup const test
2020-07-14 17:24:08 +02:00
Enzo
880c8e4dc9
cgen: else if guard ( #5822 )
2020-07-14 17:19:55 +02:00
Alexander Medvednikov
d33fbe4547
checker: format + fix duplicate const error
2020-07-14 17:18:10 +02:00
Swastik Baranwal
c3bdacbf04
doc: add info about _ separator in literals ( #5823 )
2020-07-14 15:46:13 +02:00
Alexander Medvednikov
c3ec5323f0
autofree: move new scope free behind -experimental for now
2020-07-14 15:30:55 +02:00
Alexander Medvednikov
7231b467a6
autofree: fix stmts() free
2020-07-14 14:50:51 +02:00
Alexander Medvednikov
1338e7fce2
autofree: free in each scope
2020-07-14 13:56:52 +02:00
Delyan Angelov
3703ade9f1
doc: add a Numbers section. Add tests for `0b` prefixed integer literals too
2020-07-14 11:10:43 +03:00