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

5133 Commits

Author SHA1 Message Date
Delyan Angelov
28dea17065 ci: prevent Periodic failure, ensure VSMTP_TEST_USER/VSMTP_TEST_PASS are set in smtp_test.v 2020-10-13 09:22:28 +03:00
JalonSolov
57d705e265
ast: minor code cleanup (#6608) 2020-10-12 23:11:51 +02:00
Enzo
da7d531f8f
fmt: refactor type_to_str (#6607) 2020-10-12 18:41:42 +03:00
Enzo
93bb7564dc
fmt: fix multiple problems with types (#6603) 2020-10-12 09:27:55 +03:00
scurty-labs
5e86b40469
gg: update draw_circle/arc x, y to f32 (#6595) 2020-10-11 20:36:18 +02:00
Delyan Angelov
62f6e65509 repl: fix reset; make echo "print(2.0 * 3.14159)" | ./v print only the result 2020-10-11 10:50:24 +03:00
Delyan Angelov
c7e0a27e0d ci: fix v fmt test, by formatting cgen.v and atypes.v 2020-10-11 10:00:53 +03:00
Delyan Angelov
604b28b1c5 cgen: fix for type FdfFn = fn(...) (x,y) 2020-10-11 09:53:35 +03:00
Nick Treleaven
b677ad9ca5
checker: fix panic on match expression without results (#6597) 2020-10-10 15:42:40 +02:00
Enzo
6038264a4c
gen: fix slicing mutable arguments (#6596) 2020-10-10 12:03:23 +02:00
Alexander Medvednikov
d8d80fbf42 gg: add a missing math import and vfmt 2020-10-10 10:37:17 +02:00
Alexander Medvednikov
1332bba7af autofree: wrap up optionals 2020-10-10 10:34:51 +02:00
scurty-labs
b2fdd7fbaf
gg: add draw_circle and draw_arc (#6594) 2020-10-10 10:26:08 +02:00
Xavier B
d56072eb53
vweb: fix/remove todos from assets tests (#6593) 2020-10-10 00:54:46 +02:00
Delyan Angelov
e862fad917 parser: support mut static x := y in -translated mode 2020-10-09 22:24:21 +03:00
Justin Jones
04d3ca7dbe
http: fix status codes (#6590) 2020-10-09 18:33:16 +03:00
Nick Treleaven
36706126fd
checker - improve error for as casting on non-sum type (#6587) 2020-10-09 16:12:12 +02:00
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 rbyte and cbyte (#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