yuyi
|
568faeed77
|
cgen: add `expr_string() and remove redundant codes (#9188)
|
2021-03-08 12:46:39 +02:00 |
yuyi
|
f2e570d63c
|
tests: add `for` tests of labelled continue and break (#9189)
|
2021-03-08 12:45:12 +02:00 |
Delyan Angelov
|
33bd22eda9
|
vlib/v/gen/tests: remove obsolete generation tests (used during the AST migration from v1 to v2)
|
2021-03-07 18:47:58 +02:00 |
pancake
|
ed9ca0b7bd
|
build: add address sanitizer make target (#9044)
|
2021-03-07 16:44:54 +01:00 |
zakuro
|
4c3ce97763
|
parser: fix Enum.value when Enum is an imported symbol (#9046)
|
2021-03-07 16:44:38 +01:00 |
Miccah
|
a1e0f2bc46
|
gen: add argument names to compile-time method struct (#9174)
|
2021-03-07 14:28:43 +01:00 |
yuyi
|
1b47e2953d
|
checker: check undefined ident of struct (#9164)
|
2021-03-07 14:09:38 +01:00 |
Delyan Angelov
|
f1c4e962f4
|
tests: add tests for `-d debug`, `-cg`, `-g` in combination for `[if debug]fn` etc
|
2021-03-07 12:42:30 +02:00 |
Delyan Angelov
|
64bc2fb40a
|
v: fix `[if debug] fn abc(){} ... abc()`
|
2021-03-07 12:05:07 +02:00 |
Delyan Angelov
|
c15de57f0f
|
tests: simplify the profile_test.v example program to not use `net`
(avoids unrelated openssl dependency)
|
2021-03-07 12:05:06 +02:00 |
Delyan Angelov
|
d0b89c5675
|
tests: rename for_c_multi_vars.v to for_c_multi_vars_test.v
|
2021-03-07 12:05:06 +02:00 |
nyx-litenite
|
a902178fdb
|
arrays: implement python-inspired array zip function and test (#8667)
|
2021-03-07 11:58:13 +02:00 |
yuyi
|
82085b0140
|
cgen: fix for_in map of fixed_array (#9133)
|
2021-03-07 11:41:08 +02:00 |
zakuro
|
45d51c76da
|
v.util: add an iabs(x) helper (#9172)
|
2021-03-07 11:24:05 +02:00 |
Lukas Neubert
|
6048d0e974
|
fmt: fix backslash doubling in attribute string args (#9175)
|
2021-03-07 09:44:58 +02:00 |
Lukas Neubert
|
053d6870d2
|
fmt: respect user choice of empty lines between type declarations (#9135)
|
2021-03-06 21:05:55 +02:00 |
Lukas Neubert
|
fdcfe397d4
|
fmt: write empty or blocks the same as empty fn bodies, empty structs, etc (#9136)
|
2021-03-06 21:04:51 +02:00 |
Lukas Neubert
|
043c29cf95
|
fmt: fix string interpolation with CastExpr (#9137)
|
2021-03-06 20:47:19 +02:00 |
Bartimus
|
ce92bf8da0
|
os.File: add .read_struct_at and .write_struct_at (#9114)
|
2021-03-06 20:44:53 +02:00 |
zakuro
|
7333b1706c
|
checker: minor cleanup: clear_flag(.optional) in check_expr_opt_call (#9139)
|
2021-03-06 20:42:34 +02:00 |
zakuro
|
b83530e0ed
|
fmt: extract part of fmt.v into struct.v (#9141)
|
2021-03-06 20:40:44 +02:00 |
Lukas Neubert
|
7f7f9dca6b
|
parser,fmt: fix regression with non-void arrays in if conditions (#9161)
|
2021-03-06 20:39:38 +02:00 |
Delyan Angelov
|
849cde245c
|
v: support dump(expr) (#9160)
|
2021-03-06 18:09:28 +01:00 |
penguindark
|
270df58057
|
gg.m4: fixed some bugs, added ortho projection (#9140)
|
2021-03-06 12:14:43 +02:00 |
yuyi
|
c802515e71
|
cgen: minor optimization in gen_code buffer init (#9143)
|
2021-03-06 12:03:38 +02:00 |
R cqls
|
204f57d227
|
os: update C apis used in os_android.c.v (#9134)
|
2021-03-05 19:20:11 +02:00 |
Larpon
|
07a1a9b84d
|
builtin: use fprintf to print to stderr on Android (#9130)
|
2021-03-05 19:12:42 +02:00 |
Delyan Angelov
|
fa530683c7
|
v: fix warnings for `v self`
|
2021-03-05 17:24:00 +02:00 |
Alexander Medvednikov
|
845e8decce
|
x64: basic mach-o and arm64 support
|
2021-03-05 17:52:39 +03:00 |
Joe Conigliaro
|
818be80581
|
parser: fix [] in if expr. closes #9131
|
2021-03-06 01:43:34 +11:00 |
joe-conigliaro
|
2d73411396
|
checker: define missing C fn args & check C & JS args (#8770)
|
2021-03-05 17:41:11 +03:00 |
Lukas Neubert
|
ead2ba6004
|
fmt: proper single line check for ConcatExpr (#9121)
|
2021-03-05 15:36:49 +03:00 |
yuyi
|
cbbfb460a7
|
cgen: fix for_in fixed_array (#9129)
|
2021-03-05 15:35:09 +03:00 |
zakuro
|
9ba312066e
|
fmt: extract type decls code into functions to cleanup (#9126)
|
2021-03-05 15:34:51 +03:00 |
Delyan Angelov
|
0f042124cb
|
tests: support `fn test_fn() ? { opt()? }`
|
2021-03-05 14:18:21 +02:00 |
yuyi
|
f4c03e8ed8
|
cgen: minor optimization in for_in_array (#9127)
|
2021-03-05 07:58:09 +02:00 |
Lukas Neubert
|
80356edd8c
|
fmt: combine simple attributes into a single line (#9120)
|
2021-03-05 07:17:57 +02:00 |
Gal Pasternak
|
208cabc994
|
checker: fix generic type ignores implemented interface (#9124)
|
2021-03-05 06:59:18 +02:00 |
Alexander Medvednikov
|
7446d8dc44
|
strings: test Builder's cut_last on windows
|
2021-03-04 20:35:17 +03:00 |
Miccah
|
709d7460de
|
vweb: refactor form parsing and add tests (#9051)
|
2021-03-04 18:00:03 +02:00 |
Delyan Angelov
|
6da66226e5
|
vfmt: keep `mut:` in interface declarations (#9053)
|
2021-03-04 15:30:30 +02:00 |
zakuro
|
4f02da00ba
|
checker: check arguments count of sort (#9105)
|
2021-03-04 15:22:47 +02:00 |
Leah Lundqvist
|
65e888230a
|
jsgen: object equality checks, optimise casting and start builtin implementation (#9068)
|
2021-03-04 14:02:16 +01:00 |
Delyan Angelov
|
5e0e44eb69
|
os: move file methods to vlib/os/file.c.v, document them, add new file.read_struct and file.write_struct and tests
|
2021-03-04 14:54:39 +02:00 |
yuyi
|
6097045b46
|
cgen: minor cleanup of cgen.v (#9108)
|
2021-03-04 14:40:57 +02:00 |
pancake
|
c65d65a3f5
|
v: use dash instead of lowerdash for -print-v-files (#9111)
|
2021-03-04 14:38:05 +02:00 |
Delyan Angelov
|
eb1e1afbc1
|
ci: fix failing fn_trailing_arg_syntax_keep.vv
|
2021-03-04 13:05:14 +02:00 |
yuyi
|
7c893895d8
|
cgen: minor cleanup in infix_expr() (#9086)
|
2021-03-04 12:50:18 +02:00 |
zakuro
|
6b2c7fd53e
|
fmt: remove tail space when using multiline short arg (#9110)
|
2021-03-04 12:44:50 +02:00 |
Lukas Neubert
|
8ce53b8b55
|
fmt: prevent code corruption with struct update syntax as trailing function arg (#9091)
|
2021-03-04 12:44:17 +02:00 |
Lukas Neubert
|
28fc91acb7
|
fmt: minor cleanups (#9090)
|
2021-03-04 12:43:11 +02:00 |
spaceface
|
7663f826e5
|
cgen: add auto str method generation for interfaces (#9095)
|
2021-03-04 12:41:42 +02:00 |
yuyi
|
5f9af3f594
|
cgen: fix for_in array of fixed_array (fix #9098) (#9099)
|
2021-03-04 12:39:39 +02:00 |
zakuro
|
5b041db442
|
fmt: don't prepend mod when cast with selective imported types (#9109)
|
2021-03-04 12:33:52 +02:00 |
James Addison
|
a64d9b3e12
|
termui: add show_cursor() and hide_cursor() (#9087)
|
2021-03-04 12:31:26 +02:00 |
zakuro
|
9bb073580e
|
checker: replace checking type exists with c.ensure_type_exists (#9100)
|
2021-03-04 12:28:48 +02:00 |
yuyi
|
2870a5a63a
|
vrepl: fix array_filter (#9104)
|
2021-03-04 12:24:14 +02:00 |
yuyi
|
2b9ffbda42
|
cgen: fix array_sort by different order of a/b (#9106)
|
2021-03-04 11:19:02 +01:00 |
Larpon
|
d08f994e19
|
clipboard: ensure public method access after #9062. Fixes #9089 (#9107)
|
2021-03-04 10:49:40 +02:00 |
Delyan Angelov
|
2bfa6dfe2f
|
io: fix not reading the last byte of a stream with `.read(mut buf)`
|
2021-03-04 08:59:48 +02:00 |
Lukas Neubert
|
0f8f8bd90d
|
fmt: force empty lines after struct declarations and most functions (#9096)
|
2021-03-03 23:56:40 +01:00 |
Enzo
|
3e5a0dfc94
|
time: minor cleanup of operators (#9097)
|
2021-03-03 23:56:14 +01:00 |
yuyi
|
822d20d2cc
|
cgen: minor simplification of struct zero init (#9085)
|
2021-03-03 16:03:50 +01:00 |
Patrick Hintermayer
|
38495da07e
|
docs: add a basic vweb getting started example (#9073)
|
2021-03-03 14:39:04 +02:00 |
yuyi
|
6825b4cb30
|
cgen: format if_expr generated c codes (#9084)
|
2021-03-03 14:33:00 +02:00 |
Subhomoy Haldar
|
a5dd7faf3c
|
rand: add PRNG interface and unit-tests (#9083)
|
2021-03-03 13:41:00 +02:00 |
Nick Treleaven
|
412c17ccda
|
checker: check private built-in methods are not accessible (#9062)
|
2021-03-03 11:12:50 +02:00 |
Nick Treleaven
|
bd6693efb8
|
gg/m4: fix unnecessary uses of [direct_array_access], add [unsafe] (#9059)
|
2021-03-03 10:20:13 +02:00 |
Lukas Neubert
|
460e06b9ff
|
fmt: do not insert a newline before returned $vweb.html() (#9063)
|
2021-03-03 10:14:05 +02:00 |
yuyi
|
97f9abcf82
|
cgen: fix anon_fn in containers (#9077)
|
2021-03-03 10:12:08 +02:00 |
Uwe Krüger
|
dd475f4e37
|
checker/cgen: enable `IfGuardExpr` for `a[k]` and `<-ch` (#9065)
|
2021-03-03 10:10:38 +02:00 |
StunxFS
|
dad7c40306
|
checker: minor cleanup in `call_method` (#9066)
|
2021-03-03 10:07:16 +02:00 |
Delyan Angelov
|
094936d764
|
ci: reduce chances of false positives from vweb_test.v on macos
|
2021-03-03 10:04:12 +02:00 |
zakuro
|
c74fa9e471
|
checker: correct pos for type error of `if v is interface` (#9080)
|
2021-03-03 09:23:39 +02:00 |
Lukas Neubert
|
8a0b5bad94
|
fmt: keep empty lines in const blocks (#9071)
|
2021-03-03 09:23:11 +02:00 |
Delyan Angelov
|
b89c6d7826
|
Revert "rand: use static instead of __global (#9057)"
This reverts commit ec2f731801 .
|
2021-03-03 08:36:56 +02:00 |
Delyan Angelov
|
ec2f731801
|
rand: use static instead of __global (#9057)
|
2021-03-03 07:47:47 +02:00 |
Joe Conigliaro
|
a50f2ca5e8
|
interfaces: error on implemention of own interface method & on duplicate normal methods
|
2021-03-03 15:02:10 +11:00 |
StunxFS
|
0dafdb4cde
|
dl: minor improvement of get_shared_library_extension (#9070)
|
2021-03-02 21:38:32 +02:00 |
Miccah
|
b3a31e7626
|
vweb: add test for 0 Content-Length hang (#9069)
|
2021-03-02 21:31:57 +02:00 |
Delyan Angelov
|
cd423251da
|
vweb: add .mount_static_folder_at/2 , use it instead of app.handle_static in the server_sent_events example
|
2021-03-02 21:30:18 +02:00 |
Delyan Angelov
|
eb4c60877e
|
vweb: fix timeouting after 30 seconds, when a request with `Content-Length: 0` was processed
|
2021-03-02 21:02:44 +02:00 |
Delyan Angelov
|
488848e904
|
builtin: simplify copy/2
|
2021-03-02 18:14:42 +02:00 |
Delyan Angelov
|
d0e8e8f178
|
checker: add error for `print( voidfn() )`
|
2021-03-02 17:54:38 +02:00 |
yuyi
|
62ccd740f0
|
cgen: minor perf fix in index_expr() (#9054)
|
2021-03-02 12:28:26 +01:00 |
Delyan Angelov
|
31321b68ea
|
v: show help for -h, -help, and --help, in addition to `v help`
|
2021-03-02 12:22:10 +02:00 |
yuyi
|
81dbd72412
|
cgen: fix anon_fn in containers (fix #8965) (#9049)
|
2021-03-02 10:26:27 +02:00 |
Joe Conigliaro
|
01735c67c6
|
cgen: fix duplicate method wrapper from interface method call. closes #9018
|
2021-03-02 19:15:49 +11:00 |
spaceface
|
2b53992c01
|
checker, cgen: allow implementing an interface with an embedded struct (#9042)
|
2021-03-01 21:47:00 +01:00 |
yuyi
|
65900e55e3
|
cgen: fix if_expr of multi-stmts optional (#9039)
|
2021-03-01 21:39:04 +01:00 |
Nick Treleaven
|
dc04c3196b
|
builder: fix detecting duplicate functions (#9033)
|
2021-03-01 21:38:31 +01:00 |
yuyi
|
6d77594409
|
cgen: merge cc_type and cc_type2 (#9036)
|
2021-03-01 21:36:58 +01:00 |
zakuro
|
db9b523cc9
|
utf8: deprecate utf8.char_len (#9008)
|
2021-03-01 15:35:57 +02:00 |
yuyi
|
f9c8d3d25c
|
cgen: fix return if true { 0 } else { none } (fix #9005) (#9030)
|
2021-03-01 13:56:07 +01:00 |
Miccah
|
d0fab60981
|
vweb: refactor routing logic (#9025)
|
2021-03-01 11:50:52 +01:00 |
makino
|
8045395cbd
|
net: document pub structs & functions in http/http.v (#9016)
|
2021-03-01 10:48:38 +01:00 |
Ned Palacios
|
ee879f3e41
|
x.json2: proper string encoding + minor fixes (#9026)
|
2021-03-01 10:22:36 +01:00 |
Anton Zavodchikov
|
506041a15b
|
tmpl: fix doubling templates folder path and enhancements (#9029)
|
2021-03-01 11:15:59 +02:00 |
spaceface
|
15896beace
|
cgen: scope `$for` fields/methods independently (#9017)
|
2021-03-01 01:01:56 +01:00 |
spaceface
|
b712af56fd
|
all: bring back `panic(err.msg)` -> `panic(err)` (#9022)
|
2021-03-01 00:18:14 +01:00 |
zakuro
|
ce115dcbe0
|
builtin: correct error underline for unicode wide chars (#9010)
|
2021-03-01 00:18:02 +01:00 |
Uwe Krüger
|
e937d6249c
|
cgen: fix various issues concerning optionals (#9021)
|
2021-02-28 23:21:03 +01:00 |
spaceface
|
d7252f4474
|
builtin: allow passing any argument type to `panic` (#9020)
|
2021-02-28 22:57:18 +01:00 |
spaceface
|
d63b7bc35a
|
all: update repo to use the new error handling syntax (#8950)
|
2021-02-28 23:20:21 +03:00 |
spaceface
|
b9a381f101
|
all: migrate to the new Option (p. 1) (#8924)
|
2021-02-28 22:24:29 +03:00 |
Delyan Angelov
|
e354dcefc2
|
fmt: fix support for `mut static x := 42`
|
2021-02-28 19:40:21 +02:00 |
Delyan Angelov
|
4076e8eaa0
|
tmpl: add a tmpl_all_in_one_folder.vv test; fix for static_vars_in_translated_mode.vv
|
2021-02-28 19:14:19 +02:00 |
Delyan Angelov
|
e564269477
|
ci: fix static_vars_in_translated_mode.vv
|
2021-02-28 18:55:25 +02:00 |
Delyan Angelov
|
5e87eeb864
|
tmpl: support for `@include 'file.md'` as well as paths != templates/
|
2021-02-28 18:52:31 +02:00 |
Delyan Angelov
|
4125bfe401
|
all: fix references to time.wait -> time.sleep
|
2021-02-28 18:01:31 +02:00 |
Delyan Angelov
|
bdce35fd9c
|
parser: support `static x := 42` in [unsafe] functions too
|
2021-02-28 14:32:46 +02:00 |
Delyan Angelov
|
276c08e7f7
|
fmt: support static too
|
2021-02-28 13:08:16 +02:00 |
Miccah
|
7e08e84bc1
|
vweb: refactor HTTP request parsing (#8874)
|
2021-02-27 23:18:25 +01:00 |
Miccah
|
2f9687d29b
|
net: add HTTP Header struct and methods (#8991)
|
2021-02-27 22:54:27 +01:00 |
penguindark
|
1d69a0bd22
|
gg: window_size_real_pixels that for 3D without dpi scaling (#9004)
|
2021-02-27 22:11:26 +01:00 |
Patrick Hintermayer
|
ae01b480c4
|
docs: ROADMAP.md instead of roadmap.txt (#9002)
|
2021-02-27 21:18:47 +03:00 |
Delyan Angelov
|
20f9bdfa8e
|
os: fixes for os.input(), os.get_raw_stdin(), os.get_raw_line() in case of stdin EOF
|
2021-02-27 20:02:36 +02:00 |
Alexander Medvednikov
|
e6b4f9ff09
|
time: fix sleep() on windows
|
2021-02-27 20:53:27 +03:00 |
Alexander Medvednikov
|
3a2d696fac
|
time: time.wait() => time.sleep()
|
2021-02-27 20:41:06 +03:00 |
Alexander Medvednikov
|
be4a2e17d3
|
cgen: always use tmp vars in return_statement()
|
2021-02-27 20:00:19 +03:00 |
Alexander Medvednikov
|
d39866d4f7
|
cgen: optionals/autofree fixes
|
2021-02-27 17:11:30 +03:00 |
Delyan Angelov
|
efca21e988
|
math: cleanup math.v, document math.aprox_cos and math.aprox_sin
|
2021-02-27 11:18:43 +02:00 |
Nick Treleaven
|
a1244a9f5f
|
checker: check that the module `init` fn, should have no params, and no return type (#8988)
|
2021-02-27 11:11:20 +02:00 |
zakuro
|
d0a64f2da7
|
net/openssl/websocket: implement io.Writer (#8980)
|
2021-02-27 10:29:18 +02:00 |
Uwe Krüger
|
f67bff1696
|
all: support `thread` handles and `wait()` for functions returning optionals (#8990)
|
2021-02-27 10:16:55 +02:00 |
Nick Treleaven
|
aed348fb80
|
os: tag some File methods that take voidptr as unsafe - write_bytes, write_bytes_at (#8985)
|
2021-02-27 10:11:17 +02:00 |
zakuro
|
1fd0aceb42
|
parser: imporve generics detection (#8992)
|
2021-02-27 10:07:18 +02:00 |
Delyan Angelov
|
a9e9079e48
|
gg: make .set_cfg public
|
2021-02-27 09:15:39 +02:00 |
Nick Treleaven
|
23f231ee61
|
builtin: tag array methods unsafe: *_many, grow_len, pointers (#8983)
|
2021-02-26 22:55:09 +01:00 |
Nick Treleaven
|
8874379c48
|
checker: check left selector expression in `$if left is right` (#8987)
|
2021-02-26 21:51:35 +01:00 |
spaceface
|
51fae95339
|
cgen: move the condition of an iterator to a temp var (#8989)
|
2021-02-26 21:51:01 +01:00 |
Nick Treleaven
|
4ad95cfeaf
|
checker: check types with $for/$if introspection (#8984)
|
2021-02-26 15:26:50 +01:00 |
Delyan Angelov
|
1a8ff9d7dd
|
v.gen.c: ensure that @continue is escaped in the generated C code
|
2021-02-26 10:22:35 +02:00 |
zakuro
|
995bd66970
|
encoding.utf8.east_asian: add support for East_Asian_Width (#8978)
See https://www.unicode.org/reports/tr11/
|
2021-02-26 09:52:07 +02:00 |
yuyi
|
524372d49c
|
parser: fix incorrect comments of expr() (#8979)
|
2021-02-26 09:21:58 +02:00 |
zakuro
|
89c82ff8e2
|
parser: treat f<mod.Type> as generic call not `<` operator (#8938)
|
2021-02-26 09:05:00 +02:00 |
Lukas Neubert
|
5aebd646bb
|
fmt: keep some line comments in multi line arrays (#8969)
|
2021-02-26 09:01:03 +02:00 |
Lukas Neubert
|
2c609411dd
|
fmt: do not write single line or blocks with multi line stmts (#8952)
|
2021-02-26 08:41:24 +02:00 |
Ned Palacios
|
8dff168e01
|
x.json2: create custom scanner for scanning JSON (#8716)
|
2021-02-26 08:36:02 +02:00 |
Nick Treleaven
|
59d4d0ef1d
|
checker: detect unknown type to iterate with $for (#8971)
|
2021-02-26 08:28:19 +02:00 |
Nick Treleaven
|
3a082621c9
|
checker: add a check for casting to an unknown type (#8968)
|
2021-02-26 08:26:36 +02:00 |
zakuro
|
bc0507590e
|
crypto: make digest implement io.Writer (#8975)
|
2021-02-26 08:24:47 +02:00 |
Miccah
|
d81b6e7805
|
encoding.base64: change base64 function signatures to use `[]byte` (#8970)
|
2021-02-26 08:22:12 +02:00 |
Nick Treleaven
|
c03798e390
|
checker: disallow implicit conversion from fixed array to fooptr (#8823)
|
2021-02-26 00:28:47 +01:00 |
Delyan Angelov
|
639061be6c
|
examples: fix left/right arrows in examples/term.ui/text_editor.v
|
2021-02-25 21:01:27 +02:00 |
yuyi
|
c7587c0760
|
cgen: minor cleanup in for_in_stmt() (#8962)
|
2021-02-25 13:24:42 +01:00 |
StunxFS
|
2e381f427a
|
net.html: use `or {}` in .writeln() method calls (fix #8942) (#8953)
|
2021-02-25 13:24:30 +01:00 |
Ruofan XU
|
1a8e502e2c
|
ci: add tcc32 CI on windows (#8922)
|
2021-02-25 12:52:12 +01:00 |
yuyi
|
c762d150c6
|
cgen: fix anon_fn redefinition (#8961)
|
2021-02-25 12:16:35 +01:00 |
Delyan Angelov
|
fdc60817d3
|
sync: fix compilation on latest linux distros (having only gcc-10) with tcc
|
2021-02-25 12:35:27 +02:00 |