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
Alexander Medvednikov
361d12bf43
pref: -experimental flag
2020-07-14 00:32:33 +02:00
ka-weihe
df45488e09
cgen: fix warnings ( #5820 )
2020-07-14 00:16:31 +02:00
joe-conigliaro
042add0e7f
ast: fix typo in comment
2020-07-14 04:04:16 +10:00
joe-conigliaro
dd06d90466
checker/gen: temp hack for struct fn type field (fixes ui)
2020-07-14 03:59:00 +10:00
Alexander Medvednikov
1c682d7b89
cgen/autofree: sb.writeln() optimization fixes
2020-07-13 18:59:47 +02:00
Delyan Angelov
e5a5e76a30
cgen: fix for passing functions as voidptr args
2020-07-13 19:45:13 +03:00
Delyan Angelov
e3f7681e89
smtp_test: use `assert false return`, remove for loop
2020-07-13 18:52:46 +03:00
Delyan Angelov
97d01a5487
test: enable passing username/password through env vars to smtp_test.v
2020-07-13 18:22:36 +03:00
spaceface777
e9c144bf98
smtp: rewrite module api ( #5819 )
2020-07-13 16:41:23 +02:00
Delyan Angelov
a565848dfa
tests: remove duplicate test autolock_array_1_test.v
2020-07-13 15:02:44 +03:00
Uwe Krüger
6e6010d198
checker, cgen: implement auto-lock for `a[i]++`, `a[i]--` ( #5817 )
2020-07-13 15:01:32 +03:00
Delyan Angelov
b04fff272e
tests: move autolock_array_1.v to autolock_array_1_test.v
2020-07-13 14:21:44 +03:00
Uwe Krüger
aa364ddaca
checker, cgen: checks for shared/lock, first autolock ( #5815 )
2020-07-13 12:19:28 +02:00
Delyan Angelov
1baa7ef806
os: implement os.write_file_array and os.read_file_array .
2020-07-13 10:46:37 +03:00
Alexander Medvednikov
db2346069a
gg: always use stb_truetype for now
2020-07-13 01:02:50 +02:00
Delyan Angelov
f1fdafcdff
pref: add -check-syntax for just parsing files, without checking them
2020-07-12 22:44:38 +03:00
Swastik Baranwal
b5b5176f9b
string: add filter method ( #5812 )
2020-07-12 21:07:28 +03:00
Nedim
8674991bac
smtp: add mail sent confirmation and tests for smtp lib ( #5813 )
2020-07-12 20:42:11 +03:00
Takeru Tanaka
f61a7bf3df
os,rand.mt19937: fix broken links in code comments ( #5806 )
2020-07-12 16:18:52 +03:00
Delyan Angelov
d28a1042a0
net.http, net.websocket: allow importing both in the same app
2020-07-12 15:21:40 +03:00
Delyan Angelov
53ee5eb043
vfmt: fix removing cmod. in []Enum return values
2020-07-12 14:40:50 +03:00
Nick Treleaven
53023c1ca9
all: add UnsafeExpr ( #5793 )
2020-07-12 12:58:33 +02:00
Alexander Medvednikov
cad816a19d
gg: text_height()
2020-07-12 12:48:42 +02:00
Delyan Angelov
9c43d36513
parser,checker: add `-d trace_parser`, `-d trace_checker`
2020-07-12 12:56:01 +03:00
Delyan Angelov
23c8e1f06d
checker: add support for `-d debug_stmts` to ease debugging checker panics
2020-07-12 12:04:39 +03:00
Alexander Medvednikov
40da32a141
gg: text_width()
2020-07-12 01:46:21 +02:00
Nedim
25c397f921
net.smtp: remove credentials from the test ( #5808 )
2020-07-11 21:19:36 +02:00
Nedim
549c4f54cd
net: implementation of SMTP RFC 2821 ( #5807 )
2020-07-11 21:05:24 +02:00
Delyan Angelov
c891014c77
scanner: reduce memory, increase speed for long commented sections
2020-07-11 21:27:39 +03:00
Delyan Angelov
022cc72740
scanner: parse multiple comments and long strings without a stackoverflow
2020-07-11 20:52:08 +03:00
Alexander Medvednikov
a2cb01e16a
parser: parse _x64.v files only with -x64
2020-07-11 19:03:59 +02:00
Alexander Medvednikov
d4dd5645fe
parser: remove strconv import
2020-07-11 18:53:50 +02:00
Delyan Angelov
498c8cfc8e
builtin: skip print_backtraces on panics with tcc, it does it automatically
2020-07-11 17:51:06 +03:00
yuyi
9b4c81e85f
checker: check missing return values in functions ( #5803 )
2020-07-11 16:30:49 +02:00
Delyan Angelov
37d739684c
checker: prevent string(byte), suggest byte.str() instead
2020-07-11 17:09:22 +03:00
ka-weihe
ae349ca6ba
cgen: fix all -Wmissing-variable-declarations ( #5802 )
2020-07-11 15:37:40 +02:00
Alexander Medvednikov
59df2db4e0
ci: disable C++ test for now
2020-07-11 15:36:08 +02:00
Delyan Angelov
26768e8514
vfmt: strip `current_module.` in fn args more robustly
2020-07-11 16:09:20 +03:00
Delyan Angelov
b55f84c0a8
vfmt: turn off module is imported but never used for vfmt
2020-07-11 15:03:37 +03:00
Delyan Angelov
7c0a298701
vfmt: fix crash when a .v file contains only imports
2020-07-11 14:54:55 +03:00
Delyan Angelov
3aeca70970
benchmark: update the example in the README.md
2020-07-11 14:54:55 +03:00
Alexander Medvednikov
ab3c1f2a08
prealloc: skip frees for now
2020-07-11 13:22:18 +02:00
yuyi
fae601fe39
array: add `reverse_in_place` for performance ( #5798 )
2020-07-11 13:17:11 +02:00
Alexander Medvednikov
b92ce38593
os: fix v_realloc call on windows
2020-07-11 12:45:22 +02:00
Alexander Medvednikov
2e275731a3
websocket: fix compilation
2020-07-11 12:41:37 +02:00
Alexander Medvednikov
649821be4c
all: use v_realloc
2020-07-11 12:37:54 +02:00
Alexander Medvednikov
2a696cb837
vet: prohibit spaces before `)`
2020-07-11 12:14:19 +02:00
Alexander Medvednikov
d94a02ba79
strings: builder.writeln() optimization
2020-07-11 12:03:24 +02:00
Alexander Medvednikov
549d7a487d
tests: fix scanner_test.v
2020-07-11 11:51:58 +02:00
Alexander Medvednikov
d4d552fb00
vet: prohibit spaces after `(`
2020-07-11 11:41:39 +02:00
Alexander Medvednikov
a1073105e1
all: re-enable -prealloc
2020-07-11 11:25:56 +02:00
Delyan Angelov
006d260d20
vfmt: keep `vproto.Name`, in module `proto` in struct inits too
2020-07-11 02:42:57 +03:00
Uwe Krüger
646df49c74
builtin: fix string.hash method for `gcc -O2` ( #5794 )
2020-07-11 01:18:52 +03:00
Delyan Angelov
7248d8422e
vfmt: keep `vproto.Name`, when current module is `proto`
2020-07-11 00:59:19 +03:00
pancake
7d6ba2d07d
checker: add error when interface i, without a .str() method, have i.str() called ( #5788 )
2020-07-10 22:47:29 +03:00
Delyan Angelov
2fb5c91f4d
scanner: remove error check for embedded \x00 chars in c'literals'
2020-07-10 21:42:03 +03:00
yuyi
bf14e666ea
cgen: add `gen_map_equality_fn` to compare maps ( #5770 )
2020-07-10 18:08:17 +02:00
yuyi
0c9c66dd6b
cgen: fix mutable array arguments ( #5769 )
2020-07-10 18:04:51 +02:00
Emily Hudson
7488dd829d
all: _allow_multiple_values enum attribute ( #5772 )
2020-07-10 16:43:02 +02:00
Delyan Angelov
88946a34bb
checker: limit showing too many unhandled match cases
2020-07-10 15:49:02 +03:00
penguindark
e85c1fb762
utf8: bug fix in get_uchar ( #5775 )
2020-07-10 14:44:40 +02:00
Swastik Baranwal
9839b0eb7f
parser: handle `a,b += 1,1` ( fix #5735 ) ( #5783 )
2020-07-10 13:59:17 +02:00
Delyan Angelov
75b7b9564a
builder: show the contents of the C .rsp file on -showcc
2020-07-10 13:07:20 +03:00
Delyan Angelov
ca9790a71f
vweb: ensure the tcp connection is always closed at the end of the response
2020-07-10 10:49:39 +03:00
Delyan Angelov
d3e676bdc1
orm: use errcode comparisons, instead of strcmp(sqlite3_errmsg,msg)
2020-07-10 10:14:30 +03:00
Uwe Krüger
581603f2bd
fmt: make formatter know about new keywords `shared`, `rlock` ( #5779 )
2020-07-09 22:41:45 +02:00
Daniel Däschle
fb927dab60
checker: check all branches for return ( #5763 )
2020-07-09 22:38:43 +02:00
Uwe Krüger
194ecda829
fmt: array_init: use line breaks of first elements in every hierarchy ( #5777 )
2020-07-09 22:36:49 +02:00
Lukas Neubert
14d83c8457
orm: fix invalid `no more rows available` error ( #5774 )
2020-07-09 22:36:01 +02:00
Uwe Krüger
e47ad33af6
fmt: format array elements line-by-line when nl after `[` ( #5776 )
2020-07-09 19:47:12 +02:00
yuyi
31ac20876c
cgen: minor formatting of `struct_init` ( #5768 )
2020-07-09 17:25:48 +02:00
Louis Schmieder
3792e17885
vweb: fix routing for 0 params ( #5773 )
2020-07-09 17:16:02 +02:00
Daniel Däschle
c5dc1a33b6
all: remove `it` smartcast and replace with original variable name ( #5764 )
2020-07-09 17:14:14 +02:00
Alexander Medvednikov
9511b7d0a1
cc: do not use -ldl in cross compiling for now
2020-07-09 12:29:49 +02:00
Alexander Medvednikov
8c338a7c3b
cc: format and fix linuxroot download
2020-07-09 12:26:15 +02:00
Alexander Medvednikov
dfa29b6e4d
fast: fix 1mil.v test
2020-07-09 11:56:31 +02:00
Delyan Angelov
73a259496e
tests: support `VTEST_ONLY=fn_,match_ ./v test-fixed` and in compiler_test.v
2020-07-09 10:47:16 +03:00
Delyan Angelov
ce31c4c03e
tests: support `VTEST_ONLY=parser ./v vlib/v/compiler_errors_test.v`
2020-07-09 10:27:31 +03:00
Louis Schmieder
373aa3dbc8
vweb: router: fix trailing / ( #5760 )
2020-07-08 22:15:37 +02:00
Alexander Medvednikov
b8d762df97
gg: use D3D and stb_truetype on Windows;
2020-07-08 21:43:27 +02:00
Tomas Hellström
2790890bc2
ci: use pre built docker containers for musl ( #5759 )
2020-07-08 21:30:57 +03:00
Daniel Däschle
c0fa31e75a
cgen: if smartcast part 3 ( #5755 )
2020-07-08 19:14:47 +02:00
Alexander Medvednikov
03b76d19f1
repl: make the info message a bit smaller
2020-07-08 17:22:38 +02:00
Daniel Däschle
e7cd496c31
parser: smartcast fix ( #5756 )
2020-07-08 16:08:44 +02:00
Nick Treleaven
f834276803
doc: struct literals ( #5726 )
2020-07-08 16:02:35 +02:00
yuyi
64e9bdc213
parser: fix non-void optional fn missing return value ( fix #5736 ) ( #5741 )
2020-07-08 16:01:17 +02:00
Daniel Däschle
5ea17ad2d4
all: if smartcast part 2 ( #5754 )
2020-07-08 15:46:58 +02:00
Louis Schmieder
7ad03e9d6a
vweb: simplify router ( #5751 )
2020-07-08 15:22:03 +02:00
Daniel Däschle
b62bf59c21
all: if-is smartcast part 1 ( #5730 )
2020-07-08 15:17:28 +02:00
Emily Hudson
3b0dfd9ae1
cc: use @response files to avoid command line length limits ( #5750 )
2020-07-08 15:50:17 +03:00
Delyan Angelov
69d3c3f596
cgen: sort const inits/cleanups topologically, skip calling non `fn init(){}` fns
2020-07-08 14:28:58 +03:00
Alexander Medvednikov
2425c05c42
Revert "cgen: sort const inits/cleanups topologically too"
...
This reverts commit 38000f8622
.
2020-07-08 12:56:56 +02:00
Uwe Krüger
88248b1b66
cgen: add support for shared arrays ( #5721 )
2020-07-08 11:05:43 +02:00
Delyan Angelov
38000f8622
cgen: sort const inits/cleanups topologically too
2020-07-08 11:22:30 +03:00
Ruofan XU
9c87ace153
cgen: fix cross assign for functions ( #5734 )
2020-07-08 09:17:26 +03:00
Louis Schmieder
3bb1d24dad
parser: add template path by fn name for vweb ( #5737 )
2020-07-08 09:12:57 +03:00
yuyi
bd16dd9fdf
cgen: fix assert `sumtype is` ( #5739 )
2020-07-08 09:05:01 +03:00
yuyi
b0ce66d141
gen: fix generated `defer` ( #5717 )
2020-07-08 08:39:11 +03:00
Alexander Medvednikov
246e7e8464
vweb: form error
2020-07-07 21:35:59 +02:00
Emily Hudson
cdfb578565
builder: cache msvc ( #5733 )
2020-07-07 20:35:49 +02:00
joe-conigliaro
c99200918e
checker: fix if
2020-07-08 01:42:42 +10:00
joe-conigliaro
2480cce1ed
checker: optimize if & fix typo
2020-07-08 01:36:48 +10:00
Alexander Medvednikov
e0fcd565d5
gg: fix default text size
2020-07-07 17:33:24 +02:00
joe-conigliaro
5fd5e558ae
parser/checker/gen: anon fn direct call with args
2020-07-08 01:10:39 +10:00
Louis Schmieder
f8a89e3f8f
gg: fix text rendering ( #5727 )
2020-07-07 17:09:35 +02:00
Louis Schmieder
2a7a6fa1eb
orm: add delete stmt ( #5725 )
2020-07-07 16:55:32 +02:00
Alexander Medvednikov
4d7d1eb0c4
http: referer()
2020-07-07 14:37:43 +02:00
yuyi
dc24327b1e
cgen: minor optionals fix ( #5714 )
2020-07-07 14:21:02 +02:00
Tarang11
68e01d87be
checker: fix multi assignment for multiple fns ( #5716 )
2020-07-07 14:18:51 +02:00
Louis Schmieder
d2d4ea42ce
vweb: add url query ( #5719 )
2020-07-07 13:46:57 +02:00
yuyi
4490cd2e8a
os: replace panics with optionals ( #5718 )
2020-07-07 12:41:42 +02:00
Alexander Medvednikov
a6450e8e98
vweb: fix and simplify routing
2020-07-07 12:35:45 +02:00
Uwe Krüger
ef02373061
all: remove `rwshared` keyword, make its semantics default for `shared` ( #5710 )
2020-07-07 01:57:31 +02:00
Alexander Medvednikov
013c0e6e16
gg: make FT private
2020-07-06 21:40:24 +02:00
Alexander Medvednikov
48f1f814d2
gg: minor fixes
2020-07-06 20:40:54 +02:00
Alexander Medvednikov
0ed8199da2
gg: merge ft module
2020-07-06 20:29:09 +02:00
yuyi
43c8726c37
cgen: minor optimization of comptime ( #5705 )
2020-07-06 19:58:21 +02:00
Alexander Medvednikov
1f3d7d393e
gg: simplify text rendering
2020-07-06 19:45:00 +02:00
Leah Lundqvist
cfa8e0a81a
js: |0 -> parseInt ( #5703 )
2020-07-06 18:09:54 +02:00
joe-conigliaro
9a4d989188
test: move sumtype int cast test into fn & test var
2020-07-06 23:39:51 +10:00
Leah Lundqvist
659aa8db3c
js: fix int division ( #5701 )
2020-07-06 15:24:24 +02:00
Delyan Angelov
6b2777e681
compiler: support VTMP; tests: delete .tmp.c files on successfull tests
2020-07-06 15:08:46 +03:00
joe-conigliaro
d82e6c9cd9
checker/table: fix sumtype cast from int literal
2020-07-06 21:27:48 +10:00
Delyan Angelov
25771a1afe
compiler: remove -keepc option (it is now always on)
2020-07-06 13:42:18 +03:00
yuyi
c94038af89
cgen: improve generated code formatting ( #5693 )
2020-07-06 12:33:57 +02:00
yuyi
fc7237be7b
checker: fix cast to sum type ( fix #5690 ) ( #5692 )
2020-07-06 12:32:59 +02:00
yuyi
f41edef4c6
checker: add `1/0x0 1/0b0..` division by zero check ( #5694 )
2020-07-06 12:32:00 +02:00
Uwe Krüger
c3614c0e38
cgen, sync: implement separate read/write locks for `rwshared` types ( #5687 )
2020-07-05 22:53:28 +02:00
Louis Schmieder
3cd9e2cab7
vweb: fix index ( #5682 )
2020-07-05 22:05:58 +02:00
spaceface777
d0e321c8a3
fmt: allow parsing files without `fn main()` ( #5681 )
2020-07-05 20:53:01 +02:00
KrisChambers
8d035a446a
Fix v/parser: Failure to parse structs with fields typed as anonymous functions returning having an optional void (`?`) return type. ( #5684 )
...
* Handle optional void return type in function types in struct fields.
* Add more testing for optional return types in struct fields.
* Move language parsing into it's own function
* Fix issue caused by not setting typ.
* Fix test for structs containing anon fn with optional void return types
2020-07-05 19:29:39 +02:00
Alexander Medvednikov
f6ab63f3a0
stbi: remove opengl call
2020-07-05 19:28:31 +02:00
Delyan Angelov
1416c70e73
net.websocket: fix building client.v
2020-07-05 18:44:39 +03:00
joe-conigliaro
4e66728477
checker/table: rearrange sumtype check fns
2020-07-06 00:53:56 +10:00
Alexander Medvednikov
36183660e6
remove oldgg, gl, glfw, freetype from vlib now that we have the new sokol based `gg`
2020-07-05 16:44:28 +02:00
yuyi
96bd4e8794
parser: fix type detection in `match` ( #5679 )
2020-07-05 16:35:45 +02:00
joe-conigliaro
9d7f1a236a
checker/gen: fix nested sumtype matching
2020-07-06 00:25:04 +10:00
yuyi
34a24eaa4e
checker: validate loop var names ( #5677 )
2020-07-05 15:27:37 +02:00
yuyi
cda9240632
cgen: add unsafe block braces and comments in generated code ( #5674 )
2020-07-05 13:32:39 +02:00
Delyan Angelov
770ffa1ebd
crypto.rand: fix linux/solaris rand.read() compilation
2020-07-05 01:33:43 +03:00
Alexander Medvednikov
188bad4f38
vfmt: handle string attrs
2020-07-04 23:38:28 +02:00
Enzo
7778cbe9f5
all: make `os` global in scripts ( #5669 )
2020-07-04 23:37:41 +02:00
yuyi
11866fb017
cgen: improve code formatting of `array_init` ( #5663 )
2020-07-04 21:49:04 +02:00
Delyan Angelov
f374e37b61
checker: add details about a non matching functional argument
2020-07-04 22:37:06 +03:00
Delyan Angelov
108913c69e
checker: handle error token positions with negative pos.len
2020-07-04 21:55:14 +03:00
Delyan Angelov
0637feb382
checker: use a more readable error message for non matching fn args
2020-07-04 21:23:22 +03:00
Delyan Angelov
db4a9d6b59
checker: stricter check for function type signatures
2020-07-04 21:01:08 +03:00
Ryan Willis
bb6ab185c3
ci: fix periodic integration tests ( #5666 )
2020-07-04 19:52:25 +02:00
Daniel Däschle
0626ac2901
checker: fix position of infix expr error
2020-07-04 18:52:40 +02:00
div72
be04de98bb
checker: check for enum value duplicates/overflow ( #5659 )
2020-07-04 18:28:01 +03:00
Delyan Angelov
b018381f10
vfmt: fix `as var` in `match expr as var {}`
2020-07-04 16:46:46 +03:00
Delyan Angelov
fe50bdc164
vfmt: ran `v vet vlib/v/` and fix spaces
2020-07-04 16:19:54 +03:00
Delyan Angelov
d2a2db7bff
vfmt: format scanner.v
2020-07-04 16:14:30 +03:00
Delyan Angelov
5b93b4f37d
vfmt: allow multiple comments after if branches
2020-07-04 16:13:58 +03:00
Delyan Angelov
68af46402e
vvet: allow passing many files, improve specifity for emacs goto error
2020-07-04 15:29:00 +03:00
Delyan Angelov
dc3101384f
checker: cleanup indentation
2020-07-04 14:45:11 +03:00
Delyan Angelov
48029fa9ad
checker: check .str() calls too
2020-07-04 14:43:01 +03:00
Delyan Angelov
35431d457b
checker: add check for strict .str() method signature
2020-07-04 14:14:43 +03:00
Delyan Angelov
4403c76406
vfmt: print `or { }` on a single line
2020-07-04 14:14:43 +03:00
Delyan Angelov
bae9ed0350
os: fix file.writeln(s) too, where s contains `0` bytes
2020-07-04 14:14:43 +03:00
Uwe Krüger
3b067f5f85
all: experimental locked concurrency support, part 1 ( #5637 )
2020-07-04 12:44:25 +02:00
yuyi
27149ba8bc
cgen: fix `in` in mutable arrays ( #5647 )
2020-07-04 12:12:44 +02:00
Ruofan XU
765ffa37eb
cgen: fix == for mut arraay args ( #5648 )
2020-07-04 11:36:33 +02:00
joe-conigliaro
da98c3c135
checker: use new match syntax everywhere
2020-07-04 19:23:41 +10:00
joe-conigliaro
cdd4a7c880
checker: only check ForInStmt.high once
2020-07-04 19:10:37 +10:00
div72
95696559b7
os: fix early termination when saving binary ( #5646 )
2020-07-04 01:48:01 +02:00
Ruofan XU
37f31da6c9
parser: minor simplification ( #5645 )
2020-07-03 23:22:43 +02:00
Alexander Medvednikov
3d3549d65a
Revert "parser: advanced division by zero check ( #5629 )"
...
This reverts commit f03688e443
.
2020-07-03 22:30:51 +02:00
Alexander Medvednikov
e9e437ce05
repl: show short version
2020-07-03 22:30:34 +02:00
Alexander Medvednikov
244d61f8d0
vweb: fix a route matching bug
2020-07-03 22:00:17 +02:00
yuyi
67e85fa9dd
cgen: fix indent in `for_in_string` ( #5631 )
2020-07-03 18:10:45 +02:00
yuyi
61213263cd
cgen: remove extra `\n` in map.get ( #5630 )
2020-07-03 18:10:29 +02:00
Nick Treleaven
0b49e4db1c
v/checker.v: disallow pointer arithmetic for InfixExpr outside unsafe {} ( #5640 )
2020-07-03 18:10:10 +02:00
Ruofan XU
a2395ff3e8
cgen: fix mut map with relation op in fn ( #5642 )
2020-07-03 18:07:11 +02:00
yuyi
9e949622d3
vrepl: pre-imported common modules ( #5643 )
2020-07-03 18:06:36 +02:00
Alexander Medvednikov
2281163efd
vweb: fix a routing bug
2020-07-03 17:50:48 +02:00
Tom Leen
51410fdb6d
vweb: add .txt and .md mime types ( #5641 )
2020-07-03 17:17:25 +02:00
Delyan Angelov
8adaf4efd4
cgen: allow `-printfn main` for _test.v files too
2020-07-03 17:53:48 +03:00
Delyan Angelov
652380c5fd
cgen: fix `-printfn main`
2020-07-03 17:42:59 +03:00
yuyi
dff385cb37
cgen: fix map_in mut ( #5638 )
2020-07-03 17:33:53 +03:00
Delyan Angelov
df2749dd50
vfmt: fix indent level of commented match branches
2020-07-03 17:16:20 +03:00
Alexander Medvednikov
b7175b54eb
vweb: ['/:arg1/:arg2/action'] attribute
2020-07-03 15:10:39 +02:00
yuyi
f03688e443
parser: advanced division by zero check ( #5629 )
2020-07-03 11:28:00 +02:00
yuyi
1efbb83060
cgen: add space before `else` in match ( #5632 )
2020-07-03 11:23:23 +02:00
Delyan Angelov
3c432f5e07
orm: require `order by` instead of just `order`
2020-07-02 23:37:30 +03:00
Delyan Angelov
7004f74b71
orm: fix `LIMIT var` as well
2020-07-02 23:29:29 +03:00
Louis Schmieder
421b6d4a80
orm: fix offset when order is given too ( #5625 )
2020-07-02 23:22:52 +03:00
Delyan Angelov
5813d2bf72
net.socket: add s.peer_ip()
2020-07-02 23:02:56 +03:00
Louis Schmieder
b89cbf3224
orm: add support for ordering ( #5624 )
2020-07-02 20:29:22 +03:00
yuyi
68ac8fde26
tests: add mixed and complex types tests for cross assign ( #5622 )
2020-07-02 18:20:03 +02:00
Delyan Angelov
5b900056f3
vfmt: add _keep.vv tests for the recent fixes, to prevent regressions
2020-07-02 17:50:21 +03:00
Delyan Angelov
d809bbb715
vfmt: fix enum field comments
2020-07-02 17:39:56 +03:00
Delyan Angelov
132170f54c
vfmt: handle comments in enum Abc{} and after match branches
2020-07-02 16:51:09 +03:00
Delyan Angelov
05e11f6336
vfmt: fix `for x; y; i++ \n {}`
2020-07-02 15:30:06 +03:00
Delyan Angelov
37d51e8d74
vfmt: keep top level comments on their own lines
2020-07-02 15:21:09 +03:00
Delyan Angelov
29943d7a91
vfmt: fix eating C. from C.sapp_desc{} and adding & to &&&App()
2020-07-02 15:06:35 +03:00
Tim Basel
703b060d09
cli: add flag/cmd sorting + get_all_found ( #5615 )
2020-07-02 11:10:03 +02:00
yuyi
6cbc0e84f0
cgen: fix cross assign with mutable args ( fix #5609 #5610 #5611 ) ( #5614 )
2020-07-02 11:09:26 +02:00
yuyi
c21527d3c6
cgen: fix indent in multi_return ( #5617 )
2020-07-02 11:08:27 +02:00
yuyi
e904732554
cgen: remove an extra \n in for loops ( #5618 )
2020-07-02 11:03:40 +02:00
Uwe Krüger
6c022db786
scanner: fix string interpolation for '$a.b().c' ( #5612 )
2020-07-02 00:02:59 +02:00
Delyan Angelov
4e34edfa81
vweb: allow quoting @css/@js resources with both ' and "
2020-07-01 22:03:30 +03:00
Alexander Medvednikov
2716a37916
ci: fix v vet call; fmt: fix SizeOf
2020-07-01 20:07:33 +02:00
Alexander Medvednikov
66f36f6dcc
cgen: fix gen_cross_tmp_variable, part 2
2020-07-01 19:39:41 +02:00
Alexander Medvednikov
625ed030ef
cgen: fix getn_cross_tmp_variable
2020-07-01 19:19:49 +02:00
Alexander Medvednikov
dbcb23ddc8
ci: run v vet on cgen and ast
2020-07-01 19:07:19 +02:00
Alexander Medvednikov
da99868a28
ci: run v vet vlib/v/parser
2020-07-01 18:57:14 +02:00
yuyi
40a393926d
cgen: fix cross assign of struct fields ( #5606 )
2020-07-01 18:43:14 +02:00
Delyan Angelov
56ae814cbc
gen: fix js main entry point generation
2020-07-01 19:37:24 +03:00
Alexander Medvednikov
5de0f944bd
vweb: fix a template leak
2020-07-01 17:04:30 +02:00
Alexander Medvednikov
e78dc4d682
strings: fix a leak in builder
2020-07-01 16:52:04 +02:00
Delyan Angelov
d43722fa85
vweb: fix compiling templates containing '
2020-07-01 17:44:26 +03:00
yuyi
2f614ad79f
parser: optimize cross assign using expr.str() ( #5604 )
2020-07-01 16:43:13 +02:00
Alexander Medvednikov
013a4fc0f6
cgen: do not free strings in const decls
2020-07-01 16:40:04 +02:00
Alexander Medvednikov
6dad3cc018
cgen: fix a leak
2020-07-01 15:45:02 +02:00
Nick Treleaven
e7339fec15
all: disallow pointer arithmetic for AssignStmt, PostfixExpr outside unsafe{} ( #5581 )
2020-07-01 14:50:17 +02:00
Alexander Medvednikov
5eb76606ae
cgen: store return vals in tmp vars with -autofree
2020-07-01 14:34:14 +02:00
yuyi
92eea7f95a
cgen: fix map cross assign ( #5603 )
2020-07-01 14:03:12 +02:00
yuyi
6c5b638202
parser: fix array cross assign ( fix #5577 ) ( #5591 )
2020-07-01 12:11:03 +02:00
Tim Basel
7386adfc99
cli: help/version abbrev optional + fix various inconsistencies ( #5586 )
2020-07-01 10:54:34 +02:00
Delyan Angelov
ca1f47a742
cgen: fix `for k,_ in map { x << k }`
2020-07-01 11:49:02 +03:00
Delyan Angelov
cfd71560fa
cgen: fix << for `mut a []Type` args
2020-07-01 09:21:50 +03:00
Delyan Angelov
78e1127d99
cgen: treat the main module like any other v module
2020-07-01 00:53:53 +02:00
Alexander Medvednikov
34ddc9240e
tutorials: web blog fixes
2020-06-30 21:04:00 +02:00
Delyan Angelov
3fed6ca050
cgen: comment out g_str_buf for now
2020-06-30 18:32:04 +03:00
Delyan Angelov
2fd960f12c
builtin: implement a double free detection for v strings
2020-06-30 18:32:04 +03:00
nyaascii
f10d2bb75f
string: fix trim_prefix and trim_suffix methods ( #5572 )
2020-06-30 15:44:53 +02:00
Delyan Angelov
af56b01a41
cgen: parametrize g_str_buf size by V_STRBUF_MB; free in _vcleanup()
2020-06-30 16:31:02 +03:00
Louis Schmieder
f3010cbfb2
http: add post function with json as payload ( #5580 )
2020-06-30 14:36:11 +02:00
Uwe Krüger
8a46911725
checker: check if mut function arg is declared as mut ( #5579 )
2020-06-30 14:19:22 +02:00
yuyi
61b8c0b699
cgen: change `i++` to `++i` in `for`
2020-06-30 14:14:48 +02:00
yuyi
628f13f1c8
cgen: minor optimization of `index_expr()`
2020-06-30 14:11:59 +02:00
joe-conigliaro
a3086a2ef3
cgen: optimize generic struct name replacement (temp solution)
2020-06-30 13:45:52 +10:00
joe-conigliaro
73da3c9e4c
generic structs: better naming & comments
2020-06-30 09:22:15 +10:00
Louis Schmieder
616b07204d
vweb: add cookies with expire date
2020-06-29 21:14:36 +02:00
joe-conigliaro
7565fe595b
builder: generic struct fix - derive field type
2020-06-30 04:37:07 +10:00
nyaascii
3436ae99fc
picoev: add html() content-type method
2020-06-29 20:25:16 +02:00
Alexander Medvednikov
77e56aa3f9
cgen: fix string frees in calls
2020-06-29 20:20:35 +02:00
joe-conigliaro
ab37dcaa9c
generic structs: initial implementation
2020-06-29 20:09:09 +02:00
Tim Basel
76176eddab
cli: calculate indent based on name length
2020-06-29 17:59:55 +02:00
Alexander Medvednikov
5b98cde811
cgen: free temp strings
2020-06-29 17:47:12 +02:00
yuyi
9d845262b7
parser: fix module type cast
2020-06-29 17:15:40 +02:00
yuyi
c69ef876c5
os: remove `return none` in `fn()?`
2020-06-29 15:06:26 +02:00
Tim Basel
4a1ce3e1f5
cli: add pretty print for multiline descriptions
2020-06-29 14:47:20 +02:00
Ned Palacios
025652bb78
vdoc: dd .vdocignore + minor fixes
2020-06-29 11:03:09 +02:00
yuyi
c588bdee5a
cgen: fix fn()? return
2020-06-29 11:02:40 +02:00
Delyan Angelov
1ba5996404
parser: fix interface functions with no params (ui examples)
2020-06-29 10:53:12 +03:00
Delyan Angelov
b6e6cde3e8
parser: disallow fns with type only args and a body
2020-06-29 10:21:01 +03:00
ka-weihe
1b0b4be287
atof: fix is_space ( #5555 )
2020-06-29 09:23:51 +03:00
Delyan Angelov
8f1e8a9dde
orm: cleanup test (put structs at top)
2020-06-28 22:10:49 +03:00
Alexander Medvednikov
3f59f23427
vweb: fix a leak
2020-06-28 19:55:53 +02:00
Alexander Medvednikov
d2c508e9a9
checker: clean up
2020-06-28 19:44:41 +02:00
Alexander Medvednikov
219ecd18b5
orm: handle unknown tbale names
2020-06-28 19:01:30 +02:00
Alexander Medvednikov
3dea698c93
checker: do not register pseudo variables in sql queries
2020-06-28 18:56:11 +02:00
Alexander Medvednikov
9cbf572561
tests: fix a typo
2020-06-28 15:59:05 +02:00
Alexander Medvednikov
9feaff3464
x64: fix tests
2020-06-28 14:05:18 +02:00
Alexander Medvednikov
0138f46797
vweb: fix a leak
2020-06-28 13:56:38 +02:00
yuyi
05de780219
map: add map['aa']+='str' test
2020-06-28 13:34:59 +02:00
Delyan Angelov
9814497b91
vfmt: fix eating of sql x { ... limit 1 }
2020-06-28 14:27:53 +03:00
Delyan Angelov
fa867578bc
vfmt: fix segfault in update where the struct is not yet known
2020-06-28 14:07:28 +03:00
Delyan Angelov
0661273aad
vfmt: add support for sql x {} expressions and statements
2020-06-28 13:36:21 +03:00
yuyi
b924c6c4a9
cgen: minor opitimize `infix_expr` ( #5547 )
2020-06-28 11:35:49 +02:00
Delyan Angelov
13783aea70
vfmt: support for 'VDIFF_OPTIONS=-w'
2020-06-28 12:35:05 +03:00
yuyi
d9409006fa
cgen: fix a[0]+='str'
2020-06-28 11:16:16 +02:00
Alexander Medvednikov
e666209fe2
vweb: set_content_type()
2020-06-27 23:22:41 +02:00
Emily Hudson
c84bafbdae
vlib,cgen: cleanup array inits using `.repeat() instead of new init syntax
2020-06-27 21:46:04 +02:00
Delyan Angelov
1e5a53abb3
sqlite: support for thirdparty/sqlite amalgamation install
2020-06-27 21:23:26 +03:00
Emily Hudson
1848eb0973
cgen,map: fix leaks in `keys()` and `for x in y`
2020-06-27 17:00:27 +02:00
Alexander Medvednikov
190f970544
checker: handle limit and offset
2020-06-27 16:41:29 +02:00
Alexander Medvednikov
3672cfad0b
orm: offset test
2020-06-27 16:25:25 +02:00
Alexander Medvednikov
f990a0b3d3
orm: offset
2020-06-27 16:22:41 +02:00
Alexander Medvednikov
f073ffa4ad
orm: limit
2020-06-27 16:19:12 +02:00
Louis Schmieder
f8f2fa246e
orm: fix sql table names
2020-06-27 15:14:53 +02:00
Alexander Medvednikov
6a335c4416
fmt: run on parser/assign.v
2020-06-27 15:00:28 +02:00
Alexander Medvednikov
2bfe8e5153
vet: a basic version that just checks indentation for now
2020-06-27 14:50:07 +02:00
yuyi
58763ff299
map: remove unused `get2()` and `get3()`
2020-06-27 13:58:07 +02:00
Alexander Medvednikov
02b846aa72
vweb: fix json() and text() results
2020-06-27 13:56:15 +02:00
Uwe Krüger
8fe70a24a8
checker: forbid non-reference mut arg or receiver of go function
2020-06-26 23:31:38 +02:00
Tomas Hellström
993cd1467b
sync: own submodule for atomic
2020-06-26 23:31:03 +02:00
Alexander Medvednikov
d52f1da7a2
orm: handle missing rows
2020-06-26 20:38:21 +02:00
Tomas Hellström
def99bed02
sync: atomic counters
2020-06-26 20:04:17 +02:00
Emily Hudson
09236a438b
msvc: unique names for pdb files, remove test job limit
2020-06-26 17:16:15 +02:00
Delyan Angelov
c83c5e7c61
os: use `return none` in functions returning `?`
2020-06-26 17:57:02 +03:00
joe-conigliaro
2440ffd013
cgen: always unwrap generic type. fix `x := &T{}`
2020-06-27 00:31:36 +10:00
Delyan Angelov
951f30853a
os: fix rmdir on windows
2020-06-26 17:24:36 +03:00
Daniel Däschle
8903f6e0c0
tmpl: add docs for variables
2020-06-26 15:02:49 +02:00
Lukas Neubert
692ca8ac83
os: make all rm functions return an optional
2020-06-26 15:01:10 +02:00
jhuntos
20884c9576
pg: call PQclean in rows()
2020-06-26 11:55:59 +02:00
joe-conigliaro
202d479bad
checker: fix typo in check_types.v
2020-06-26 15:05:07 +10:00
Alexander Medvednikov
9a713ff9b0
orm: handle more operators
2020-06-25 22:58:28 +02:00
Alexander Medvednikov
aec7f2f6c4
checker: SqlStmt fixes
2020-06-25 22:37:40 +02:00
Uwe Krüger
46379d92f4
fmt: force break in front of long unbreakable parts, avoid very small sub-expressions
2020-06-25 22:24:28 +02:00
Alexander Medvednikov
328cb7ed7e
orm: `update` with selectors and other fixes
2020-06-25 22:23:19 +02:00
Alexander Medvednikov
450c6e843c
orm: `update` with multiple fields
2020-06-25 17:18:44 +02:00
Alexander Medvednikov
b280e08ee0
orm: `update` cgen
2020-06-25 17:12:32 +02:00
Alexander Medvednikov
a8b0dfb38a
checker: allow casting strings to string aliases
2020-06-25 14:55:53 +02:00
Alexander Medvednikov
ce6f687f65
checker: remove an unnecessary error for unexisting types
2020-06-25 14:51:58 +02:00
Alexander Medvednikov
afa5a134b7
orm: move fields fetching to a separate function to remove copy pasta
2020-06-25 14:43:25 +02:00
yuyi
f1e17f30f6
cgen: fix map_in error
2020-06-25 12:53:12 +02:00
yuyi
5e9c154376
os_api: cp/cp_all/... ?bool => ?
2020-06-25 12:06:47 +02:00
Alexander Medvednikov
786be1d1c3
orm: move type logic to checker, so that sql queries can be used before type def
2020-06-25 12:05:24 +02:00
Uwe Krüger
a1bad50b2f
token: use only one representation for precedences
2020-06-25 11:36:13 +02:00
Uwe Krüger
bdecbc1945
fmt: use `-1` for *really* no precedence, since `&` and `|` have precedence 0
2020-06-25 02:39:33 +02:00
ka-weihe
3bb6b6c8b2
map: comments and renaming
2020-06-24 23:31:19 +02:00
Alexander Medvednikov
bb5793d485
vweb: more xss fixes
2020-06-24 22:38:25 +02:00
Alexander Medvednikov
83b300435a
vweb: escape html; table: rename parent_typ to parent_type
2020-06-24 22:12:33 +02:00
yuyi
67d9d94fb3
map: fix m[a]++ etc
2020-06-24 20:41:26 +02:00
Lukas Neubert
955c0b1576
cgen: add 'link' to c_reserved
2020-06-24 20:40:56 +02:00
Uwe Krüger
eb68c222fe
fmt: fix weird bug with tabs in string inpertolation
2020-06-24 20:40:29 +02:00
Alexander Medvednikov
9a77c0ab81
parser: fix the for loop check
2020-06-24 16:58:11 +02:00
Alexander Medvednikov
8ac00b8711
parser: check for loop key/val names
2020-06-24 16:54:21 +02:00
Alexander Medvednikov
4b0e606ae8
checker: fix the alias check
2020-06-24 16:52:23 +02:00
Alexander Medvednikov
9df29d0dd2
checker: do not allow {} for aliases; orm: update stmt
2020-06-24 16:35:18 +02:00
Uwe Krüger
0018e44102
fmt: further improvements by taking precedence into account for subexpressions
2020-06-24 15:19:30 +02:00
Alexander Medvednikov
9d0cc7912a
fmt: re-run on gen/fn.v
2020-06-24 14:56:44 +02:00
Alexander Medvednikov
e918f8faf2
fmt: re-run on checker.v and cgen.v
2020-06-24 14:44:06 +02:00
Alexander Medvednikov
11871d9544
fmt: re-run on parser.v and fmt.v
2020-06-24 14:35:00 +02:00
Alexander Medvednikov
090e6e936a
orm: SqlStmt
2020-06-24 14:32:17 +02:00
Lukas Neubert
30169f86c1
os: make `rm` return an optional
2020-06-24 14:01:19 +02:00
Daniel Däschle
852fca2151
all: call anon fns right away
2020-06-24 12:54:39 +02:00
Alexander Medvednikov
cf7ac7be7f
cgen: zero_struct_field(); orm: zero un-inited fields
2020-06-24 12:53:39 +02:00
yuyi
5f36874c9b
vrepl: fix optional call
2020-06-24 12:45:48 +02:00
yuyi
514ee9d396
cgen: fix optional void return error
2020-06-24 12:45:15 +02:00
Uwe Krüger
56749877ea
fmt: fix handling of double quotes inside single quotes
2020-06-23 23:59:58 +02:00
Alexander Medvednikov
11ad18cd28
vweb: page gen time
2020-06-23 21:02:20 +02:00
Delyan Angelov
fcd73bcb63
scanner: ignore CR signs in string literals
2020-06-23 21:10:58 +03:00
Alexander Medvednikov
74af88bc92
Revert "fmt: re-format parser.v and cgen.v"
...
This reverts commit 6b2808a3f9
.
2020-06-23 18:16:24 +02:00
Alexander Medvednikov
6b2808a3f9
fmt: re-format parser.v and cgen.v
2020-06-23 18:05:53 +02:00
ka-weihe
4e447db883
parser/fmt: fix comments in structs/consts
2020-06-23 18:01:56 +02:00
Uwe Krüger
000eaca6be
fmt: avoid breaking lines with <= 100 characters
2020-06-23 17:54:39 +02:00
yuyi
7efb3ecb34
checker: check deprecated functions
2020-06-23 16:25:24 +02:00
Alexander Medvednikov
db28796b5f
orm: handle bool literals for older sqlite versions
2020-06-23 14:07:39 +02:00
Alexander Medvednikov
16dd889922
orm: test true/false
2020-06-23 13:59:00 +02:00
Alexander Medvednikov
076d0208cd
cc: add -ldl and .o in cross builds
2020-06-23 12:57:06 +02:00
Alexander Medvednikov
63ef04e03e
os: make write_file() return an optional
2020-06-23 11:41:23 +02:00
Alexander Medvednikov
3774ae0d91
orm: fix =
2020-06-23 11:41:23 +02:00
yuyi
e2b5debc6b
checker: check optional type call
2020-06-23 11:39:58 +02:00
yuyi
ed393896f5
checker: check printing of optional type
2020-06-23 11:38:30 +02:00
joe-conigliaro
cff2874608
checker: fn arg - disallow any type with .str() to be passed as string
2020-06-23 08:51:18 +10:00
joe-conigliaro
d19a33c420
sync: use Event for waitgroup on windows
2020-06-23 03:23:42 +10:00
Alexander Medvednikov
a4b159a80f
orm: order by id by default
2020-06-22 17:13:57 +02:00
Alexander Medvednikov
e3f00ff28b
orm: `limit 1` test
2020-06-22 16:58:43 +02:00
Alexander Medvednikov
deb09d95b0
orm: fix `column == var`; limit 1; vweb: @footer
2020-06-22 16:52:16 +02:00
yuyi
73296e486a
parser: fix function return anon_fn without parentheses
2020-06-22 16:03:31 +02:00
Delyan Angelov
b930a11203
parser: fix `match x { mod.constname {} }` handling
2020-06-22 16:16:39 +03:00
yuyi
d232833573
gen: fix printing of generic arrays
2020-06-22 14:54:24 +02:00
Delyan Angelov
cf4dc93e02
sync: run sync.pool without using concurrency features when VJOBS=1
2020-06-22 14:21:54 +03:00
Richard Warburton
640bbbae85
waitgroup: remove races, make platform independent, document
2020-06-22 11:07:34 +02:00
Alexander Medvednikov
e65879d076
fmt: fix compilation
2020-06-21 23:23:31 +02:00
Alexander Medvednikov
011e26ca9a
checker: check sum types in `match`; cross compilation fixes; orm fixes
2020-06-21 23:09:53 +02:00
yuyi
81c19517d1
cgen: add gen_str_for_multi_return
2020-06-21 17:53:13 +02:00
ka-weihe
7f225f2eaa
map: rename size to len
2020-06-21 16:51:02 +02:00
Delyan Angelov
0d6233cd45
net: support for s.max_single_send_size in Socket.send/2
2020-06-21 17:40:39 +03:00
Uwe Krüger
37927235cd
parser: trigger declaration of array element as error
2020-06-20 14:30:03 +02:00
Daniel Däschle
76dc7eea50
vweb: tmpl: add docs
2020-06-20 13:29:55 +02:00
spaceface777
a02aff9126
jsgen: fixes and improvements
2020-06-20 13:22:49 +02:00
joe-conigliaro
ddd83f1fc6
checker: error if variable used before declaration
2020-06-20 12:42:08 +10:00
Alexander Medvednikov
1d8d19c977
vweb: return $vweb.html()
2020-06-20 03:12:38 +02:00
yuyi
e41ddab3b0
test: add multiple array clone tests
2020-06-20 02:35:22 +02:00
yuyi
e484fe15d3
tests: add nested array not equal tests
2020-06-20 02:34:49 +02:00
yuyi
4dc703af2d
cgen: fix nested array equality
2020-06-20 01:40:33 +02:00
JalonSolov
bbd6d0b4e5
vweb: ignore url params on static files
2020-06-20 01:39:55 +02:00
Uwe Krüger
0338d4153a
fmt: make linebreak smarter by algorithm based on penalty
2020-06-19 19:54:26 +02:00
Alexander Medvednikov
a609ff4659
orm: skip fields with [skip]
2020-06-19 17:35:50 +02:00
Swastik Baranwal
72b09d4794
term: add clear
2020-06-19 17:15:41 +02:00
Alexander Medvednikov
3cfeb92a4e
cgen: fix tmp counter; orm: insert fixes
2020-06-19 17:05:57 +02:00
Alexander Medvednikov
cd8392e42d
orm: insert
2020-06-19 16:43:35 +02:00
Uwe Krüger
c78cfa43bc
checker: make map literals have a real type
2020-06-19 15:00:27 +02:00
joe-conigliaro
7bc9e234a3
revert: checker: error if variable used before decleration p1
2020-06-19 21:37:09 +10:00
yuyi
dc8b82e9a4
array: fix multiple array clone
2020-06-19 13:32:55 +02:00
joe-conigliaro
8a5ca4cbdc
checker: error if variable used before decleration p1
2020-06-19 21:31:33 +10:00
spaceface777
624005bbd0
tcc_win: fix tests
2020-06-19 12:54:56 +02:00
Alexander Medvednikov
e8b21b4242
checker: type `x` does not support indexing
2020-06-19 12:53:53 +02:00
Alexander Medvednikov
5f5228f0f3
test: fix `as` checker test
2020-06-19 11:48:19 +02:00
Alexander Medvednikov
d04554f0b7
all: more match updates
2020-06-19 11:46:08 +02:00
Alexander Medvednikov
274ecb71fa
checker: `as` type test
2020-06-19 11:27:20 +02:00
Alexander Medvednikov
d9dd9679e7
cgen: fix a typo
2020-06-19 11:16:51 +02:00
Alexander Medvednikov
ef36520509
checker: check if the type in `as` exists, skip void type errors
2020-06-19 11:15:15 +02:00
yuyi
5a6d440f68
checker: check `array_insert` `array_prepend` type mismatch
2020-06-19 10:49:43 +02:00
Ned Palacios
5ff7d07138
vdoc: fix sorting + other minor improvements
2020-06-19 10:36:45 +02:00
Uwe Krüger
770132ff37
float: make default string representations for floats become alike
2020-06-18 22:33:41 +02:00
joe-conigliaro
1c68417918
parser: error on variable redefinition
2020-06-19 06:16:38 +10:00
spaceface777
68967e833d
parser: skip comp_if when building for a different compiler
2020-06-18 22:01:00 +02:00
Alexander Medvednikov
5ddb129bc2
checker: use the new match syntax
2020-06-18 20:38:59 +02:00
Alexander Medvednikov
78b32892ac
cgen: use the new match syntax
2020-06-18 20:21:08 +02:00
Alexander Medvednikov
d4b17fb0c3
fmt: use the new match syntax
2020-06-18 20:07:48 +02:00
Uwe Krüger
3b6e66db0d
fmt: further fixes for string interpolation and builtin macros
2020-06-18 18:48:23 +02:00
joe-conigliaro
812a9d646a
test: fix sumtype shadow & as test
2020-06-19 01:14:53 +10:00
joe-conigliaro
198fdcf1c6
test: change sumtype var shadow and as test
2020-06-19 01:10:16 +10:00
joe-conigliaro
3533335804
test: add match sumtype var shadow and `as` test
2020-06-19 01:06:40 +10:00
joe-conigliaro
45239cbd62
parser/checker/gen: match shaddow cond var & as support: p2
2020-06-19 00:41:00 +10:00
joe-conigliaro
68143b7b22
parser/checker/gen: match shaddow cond var & as support: p1
2020-06-19 00:33:16 +10:00
Alexander Medvednikov
7be952605b
0.1.28
2020-06-18 15:57:53 +02:00
Alexander Medvednikov
1d28d45c5c
builder: add -lpthread; x64: a+b, a-b
2020-06-18 14:14:42 +02:00
yuyi
947e8922f2
cgen: optimize the format of the generated code
2020-06-18 12:08:36 +02:00
yuyi
930c3d73c1
cgen: fix `arr.insert(0, [1,2,3])` and `arr.prepend([1,2,3])`
2020-06-18 12:08:11 +02:00
yuyi
b806fff90a
parser: minor optimization in parse_multi_expr()
2020-06-18 01:15:17 +02:00
yuyi
3f01e2b796
cgen: fix array.insert and arr.prepend
2020-06-18 00:22:34 +02:00
Alexander Medvednikov
7056f875db
x64: fix another test
2020-06-17 18:31:08 +00:00
Alexander Medvednikov
60bbad4d86
x64: fix a test
2020-06-17 20:24:39 +02:00
Alexander Medvednikov
a602673adb
x64: pass variables to functions
2020-06-17 20:18:51 +02:00
Uwe Krüger
9c9f6415da
fmt: more sophisticated analysis for string interpolat
2020-06-17 19:49:13 +02:00
Alexander Medvednikov
325a7c7ec5
orm: more fixes and tests
2020-06-17 14:29:44 +02:00
Alexander Medvednikov
6066414afa
orm: select many
2020-06-17 14:18:32 +02:00
joe-conigliaro
effa0061e8
parser: fix incorrect duplicate struct attr error
2020-06-17 20:27:51 +10:00
Swastik Baranwal
0052ab71e9
string: add map method
2020-06-17 12:26:55 +02:00
Alexander Medvednikov
fb5cae7376
orm: select where id = x
2020-06-17 04:05:20 +02:00
Uwe Krüger
ddb1770af2
cgen: fix unsigned/signed integer comparisons
2020-06-17 02:54:27 +02:00
Alexander Medvednikov
88654ad81b
orm: use the new optionals
2020-06-17 01:56:50 +02:00
Alexander Medvednikov
ed58192e4c
v orm: select
2020-06-17 00:59:37 +02:00
yuyi
23993d2264
cgen: fix nested array equality error
2020-06-16 18:40:32 +02:00
joe-conigliaro
d478b44915
parser/checker/gen: merge AssignExpr & AssignStmt into just AssignStmt
2020-06-16 21:20:16 +10:00
Alexander Medvednikov
9d6b402df0
test: fix sqlite_test.v
2020-06-16 12:23:52 +02:00
Alexander Medvednikov
e8f8defc3e
ast: SqlExpr
2020-06-16 12:14:22 +02:00
yuyi
2daf915371
parser: `expression evaluated but not used` error
2020-06-16 11:06:53 +02:00
Uwe Krüger
f2d9fa3815
cgen: restructure string_inter_literal()
2020-06-16 10:41:51 +02:00
yuyi
730f485591
test: fix `test_array_init()`
2020-06-15 22:31:11 +02:00
Emily Hudson
49d7a151b7
cgen: edge case for multi-returns
2020-06-15 22:30:16 +02:00
Delyan Angelov
62a872b8b5
vdoc: fix `v doc sokol` const formatting
2020-06-15 18:28:00 +03:00
joe-conigliaro
0cd9066f44
parser/cgen: multiple attributes & better errors ( closes #5334 )
2020-06-15 22:59:09 +10:00
Delyan Angelov
cadde3e9f0
vlib: fix os.exec().output usages, that may rely on trimmed lines
2020-06-15 15:38:20 +03:00
yuyi
b0138e021e
cgen: fix `in` multi_array
2020-06-15 13:21:06 +02:00
Delyan Angelov
e73ed56231
tests: add parser/tests/, move checker_test.v=>compiler_errors_test.v
2020-06-15 10:58:34 +03:00
yuyi
2785a5bf65
checker: check return_duplicate_with_none ( closes #5363 )
2020-06-15 15:10:45 +10:00
spaceface777
5f21b152a7
tcc: support tcc on Windows
2020-06-14 23:15:12 +02:00
Delyan Angelov
c874a22b3b
doc: use `v new` instead of `v create`
2020-06-14 21:20:31 +03:00
yuyi
4e1a09c9f5
cgen: fix array_init temporary variable error
2020-06-14 19:09:27 +02:00
Ruofan XU
90279a7108
checker: use ++ / -- instead of += 1 / -= 1
2020-06-14 19:05:05 +02:00
Swastik Baranwal
a3a91f54a9
checker: handle `!is` in error messages
2020-06-14 19:03:29 +02:00
Mike 'Fuzzy' Partin
206e64d72c
os: add os.uname()
2020-06-14 16:46:30 +03:00
yuyi
2ef0f15b34
string: fix contains behaviour ( closes #5371 )
2020-06-14 19:24:15 +10:00
yuyi
7e0197c1b8
cgen: fix `in` empty array
2020-06-14 10:54:10 +02:00
Adam Stankiewicz
471c931ada
os: do not trim space from output of exec
2020-06-14 01:41:47 +02:00
Alexander Medvednikov
45a3d8474e
cc: remove sysroot hack now that $ bug is fixed
2020-06-13 22:54:20 +02:00
Uwe Krüger
50cd0ed785
parser: fix string array initialization with interpolation
2020-06-13 22:38:10 +02:00
Uwe Krüger
6113c4fe63
builtin: fix string interpolation for autofree
2020-06-13 18:39:17 +02:00
Alexander Medvednikov
6ce7bb4581
vweb: remove an unnecessary empty newline at the start
2020-06-13 16:59:06 +02:00
Adam Stankiewicz
f2a75d5223
test: run all tests even if some fail
2020-06-13 16:20:45 +02:00
Alexander Medvednikov
183924e2a8
cc: linux cross compilation fixes + make work with openssl
2020-06-13 16:19:19 +02:00
Adam Stankiewicz
b3fc462a78
scanner: fix parsing multiple .amp
2020-06-13 00:01:44 +02:00
Alexander Medvednikov
af27963938
string: do not free empty strings
2020-06-12 17:20:51 +00:00
Alexander Medvednikov
ca63b92d4f
cgen: fix _STR 000
2020-06-12 16:55:21 +00:00
yuyi
90f07eb64a
parser: fix fn attributes empty error
2020-06-12 18:27:05 +02:00
Alexander Medvednikov
0d1e5abc41
cgen: call va_end() in _str()
2020-06-12 17:33:08 +02:00
Alexander Medvednikov
7750ce5f60
time: fix relative()
2020-06-12 15:28:28 +02:00
Alexander Medvednikov
b13c95ea48
Revert "vweb: @include tempaltes"
...
This reverts commit 6b06184ef4
.
2020-06-12 14:32:09 +02:00
Daniel Däschle
6b06184ef4
vweb: @include tempaltes
2020-06-12 14:30:07 +02:00
Swastik Baranwal
56ae3797dd
checker: add checks and test for ~ operator
2020-06-12 12:05:20 +02:00
yuyi
b4ad174b7f
array: fix multiple array.repeat index error
2020-06-12 11:42:26 +02:00
Adam Stankiewicz
827a9e221f
cgen: do not double-reference anon fn
2020-06-12 10:48:44 +02:00
Delyan Angelov
0a07dc5762
Revert "_vinit: use static initialization of large const []number"
...
This reverts commit b306c04e99
.
2020-06-12 09:57:38 +03:00
Delyan Angelov
b306c04e99
_vinit: use static initialization of large const []number
2020-06-12 09:41:32 +03:00
yuyi
47ffedc5de
cgen: minor array_init fix
2020-06-12 02:19:48 +02:00
yuyi
ff1437fc5a
cgen: fix multi_array index issue
2020-06-12 01:24:25 +02:00
Alexander Medvednikov
c9cfe9d40b
vweb: @js and @css template fns
2020-06-11 20:34:59 +02:00
Alexander Medvednikov
72fdb09e46
time: relative_short(); fmt: handle $vweb.html()
2020-06-11 20:26:49 +02:00
Delyan Angelov
3bf9b28773
vlib: add fixes for problems, found by check_os_api_parity.v
2020-06-11 21:16:12 +03:00
Delyan Angelov
5ef9569098
cmd/tools: add check_os_api_parity.v - keep module APIs even
2020-06-11 21:13:36 +03:00