Felipe Pena
ca198ace7d
cgen: fix nested fn call with result/option propagation ( #17738 )
2023-03-24 17:36:37 +02:00
Hitalo Souza
dc11f1fe05
json2: fix decode to map doesn't work ( #17757 )
2023-03-24 17:30:32 +02:00
Hitalo Souza
979066856b
json2: encode map ( #16928 )
2023-03-24 13:45:26 +02:00
Delyan Angelov
bfb0932588
net.http.mime: execute v run vlib/net/http/mime/build.vsh
to update db.v with the latest official mime types
2023-03-24 08:29:32 +02:00
Delyan Angelov
37a79624fc
cgen: fix println(value.name)
inside $for value in Test.values{
( #17746 )
2023-03-23 19:18:25 +02:00
Felipe Pena
8693da4d36
parser: fix parsing cast array syntax from another module ( fix #17704 ) ( #17739 )
2023-03-23 18:26:12 +02:00
yuyi
6b5c746146
ci: fix comptime_concrete_type_register_test.v after 9a9cfe4
( #17744 )
2023-03-23 16:42:35 +02:00
Felipe Pena
9a9cfe425c
all: comptime type lowercase ($int, $enum, $option, etc) ( #17732 )
2023-03-23 00:02:42 +01:00
Felipe Pena
0afb41f7e1
checker: fix missing type mismatch with ptr types ( #17695 )
2023-03-22 23:49:02 +01:00
Felipe Pena
a552a79ca8
checker: fix comptime concrete type register ( fix #17657 ) ( #17659 )
2023-03-22 16:16:19 +02:00
Felipe Pena
278e747c7a
json: make enums work with json encode+decode (serialised as string names by default; the old integer one is supported too, using [json_as_number]
) ( #17696 )
2023-03-22 10:33:32 +02:00
Felipe Pena
c9345be6de
ast: fix embed name with enum as generic struct type ( fix #17721 ) ( #17727 )
2023-03-22 09:50:58 +02:00
walking devel
d0e78b1da6
parser: breaking change, let V ORM queries return arrays for *all* non-count queries, including limit = 1
( #17719 )
2023-03-22 09:48:01 +02:00
Swastik Baranwal
93b7cc4888
cgen: allow using of original operation if alias is number and no custom method is defined ( #17718 )
2023-03-21 11:39:58 +02:00
Felipe Pena
326e43385b
cgen: fix match with option type ( #17713 )
2023-03-21 11:38:30 +02:00
d3c0d3d.exe
54a1b66b94
os: add create_no_window parameter to Process ( #17726 )
2023-03-21 11:24:40 +02:00
yuyi
e1d4539a14
cgen: clean up comments in cgen.v ( #17725 )
2023-03-21 12:07:25 +03:00
yuyi
968b519be5
checker: implement infering generic struct types ( #17717 )
2023-03-20 20:42:53 +02:00
Louis Brunner
977cd0d8df
cgen: better alias handling for references/shared ( #17656 )
2023-03-20 17:35:45 +01:00
Felipe Pena
17fe76368a
regex: fix simple char match ( #17701 )
2023-03-20 10:37:09 +02:00
Felipe Pena
74eac1de4e
parser: fix parsing array of options from a submodule ( #17714 )
2023-03-20 10:36:22 +02:00
Alexander Medvednikov
f1e9a8ff37
tests: remove unnecessary v_printf test
2023-03-19 15:30:52 +03:00
Alexander Medvednikov
47e10a9fcd
strconv: make v_printf private
2023-03-19 15:03:49 +03:00
Alexander Medvednikov
7939ca2997
strconv: deprecate v_sprintf
2023-03-19 11:30:56 +03:00
yuyi
c18bf48833
cgen: fix closure with fixed array variable ( #17707 )
2023-03-19 10:11:11 +02:00
Casper Kuethe
37af8bbd27
vweb.assets: add option for custom href and src attribute values ( #17703 )
2023-03-19 10:02:59 +02:00
yuyi
9275161d0f
strconv: fix v_sprintf with '%%' ( #17708 )
2023-03-19 09:52:45 +02:00
Delyan Angelov
3793bf1c99
builtin: optimise the common case of s.contains("x")
add s.contains_byte(x)
( #17702 )
2023-03-19 01:10:13 +03:00
yuyi
14148f3e52
toml: clean up autocast in parser.v ( #17662 )
2023-03-18 23:15:00 +03:00
Felipe Pena
2df23a6698
json: fix ptr field access ( #17690 )
2023-03-18 14:47:40 +02:00
Brandon
aee76c5819
net: update new_request ( #17618 )
2023-03-17 22:17:22 +01:00
yuyi
268cee82fc
cgen: fix map of complex array ( #17660 )
2023-03-17 22:12:59 +01:00
yuyi
24ea00da0c
checker: clean up infer_struct_generic_types() and infer_fn_generic_types() ( #17668 )
2023-03-17 21:46:56 +01:00
Felipe Pena
9e7aeec215
sql: fix wrong field name on generated code ( #17684 )
2023-03-17 21:45:52 +01:00
Felipe Pena
68955bb26c
cgen: fix indexexpr with complex index expr ( #17693 )
2023-03-17 21:44:14 +01:00
yuyi
45c0a21f46
checker: clean up assign_stmt() ( #17664 )
2023-03-17 21:43:38 +01:00
yuyi
88ab947440
cgen: fix spawn method on generic struct ( #17691 )
2023-03-17 21:43:04 +01:00
ArthurZhou
8c35ee0722
vweb: add an option to disable startup message ( #17645 )
2023-03-17 21:41:25 +01:00
Felipe Pena
2c349247e1
checker: fix anon fn initialization as struct-like ( #17652 )
2023-03-17 21:41:00 +01:00
Delyan Angelov
6e1e406288
vweb: implement live page reload in development, based on polling (useful with watch) ( #17683 )
2023-03-16 21:00:47 +01:00
Felipe Pena
658b116d07
checker: fix wrong struct warn about inited fields ( #17678 )
2023-03-16 21:42:00 +02:00
Felipe Pena
6709b2de0f
cgen: fix selector expr with alias to ptr ( #17649 )
2023-03-16 21:32:52 +02:00
Felipe Pena
25eabf8e2d
cgen: fix argument dereference for str method when receiver is ptr ( #17648 )
2023-03-16 21:28:14 +02:00
Felipe Pena
f5b67802fd
cgen: fix push operation on array of option ( #17658 )
2023-03-16 21:24:48 +02:00
yuyi
d349c1d86d
checker: check generic fn call argument type mismatch ( #17680 )
2023-03-16 21:19:03 +02:00
Felipe Pena
b345d77805
json: support field &Type
( #17655 )
2023-03-16 21:15:14 +02:00
Felipe Pena
5eb331ed89
cgen: fix option ptr printing ( #17651 )
2023-03-16 13:02:39 +02:00
Felipe Pena
7e8723d603
cgen: fix multi return assignment with option ( #17676 )
2023-03-16 12:59:49 +02:00
Felipe Pena
93a2ffa9ef
cgen: fix fixed array assignment from unsafe block ( #17647 )
2023-03-15 20:30:49 +02:00
Felipe Pena
39e80afab0
checker: fix missing check for wrong assignment: non-option to option type ( #17628 )
2023-03-15 20:24:36 +02:00
yuyi
d290f432d1
ast: clean up resolve_init() ( #17663 )
2023-03-15 17:20:04 +02:00
Felipe Pena
2656ce9522
checker: fix missing check for [export]
attr on a fn, without parameter ( #17653 )
2023-03-15 17:17:45 +02:00
yuyi
aa50f4ebf7
checker: clean up sum_type_decl() ( #17669 )
2023-03-15 16:56:41 +02:00
Delyan Angelov
8e9e91be7e
builder: add a separate ALL_FRONT_STAGES timing metric
2023-03-15 15:14:58 +02:00
Felipe Pena
b71c131678
cgen: fix map with comp-time reflection, improve comptime var handling ( #17603 )
2023-03-14 13:49:29 +02:00
yuyi
2643d6645f
ast, parser, cgen: fix generic struct init with inconsistent generic types ( #17639 )
2023-03-14 13:24:52 +02:00
Delyan Angelov
cb7e25e47e
sokol.gfx: update the C.sg_pass_attachment_desc declaration to match the one from the Sokol headers
2023-03-14 09:02:03 +02:00
Heptalon
618c92a13b
urllib: change Values.get to return an option type ( #17636 )
2023-03-14 08:44:40 +02:00
Delyan Angelov
daa9034583
os: return the long path for os.temp_dir() on windows, even for folders like c:\someth~1
( #17623 )
2023-03-14 00:51:52 +02:00
Felipe Pena
d1d26893f5
parser: fix option struct init decl with module prefix ( #17615 )
2023-03-14 00:50:06 +02:00
Artem Yurchenko
f18cc6ebb0
vfmt: remove spurious src.
prefix, from import name
becoming import src.name
( #17633 )
2023-03-14 00:00:41 +02:00
Delyan Angelov
42732138c6
v: support -ldflags
in addition to -cflags
(allow adding C options *after* other C option, similar to LDFLAGS
) ( #17630 )
2023-03-13 21:38:48 +02:00
Felipe Pena
9ad1c2f922
checker: fix missing option function field checking ( #17601 )
2023-03-13 15:05:56 +01:00
Felipe Pena
d00237f02c
cgen: fix code generated to option fn ( fix #17604 ) ( #17614 )
2023-03-13 11:56:13 +02:00
yuyi
5cb1f8965a
cgen: fix option struct init with reference option ( #17617 )
2023-03-13 09:58:45 +02:00
Thomas Mangin
0bd094292f
v: add support for _qnx.c.v
overriding _default.c.v
( #17611 )
2023-03-12 19:48:36 +02:00
Felipe Pena
3197ec1a41
v: add compile-time enum evaluation with $for item in MyEnum.fields { dump(item.value) dump(item.name) }
( #17517 )
2023-03-12 12:46:54 +02:00
Delyan Angelov
b2a71ecab2
pref: support v -e "println(2+5)"
( #17605 )
2023-03-12 00:42:36 +01:00
yuyi
95a9f0e29b
ast, parser, fmt: fix fmt error of infix expr with comments ( fix #17560 ) ( #17583 )
2023-03-12 01:07:13 +02:00
Thomas Mangin
8490ea318b
readline: add more readline support to macos too (not simply os.get_raw_line based, but arrow key navigation, history etc too) ( #17602 )
2023-03-12 01:06:35 +02:00
ChAoS_UnItY
f02b423f80
builtin: string test refactor, string functions inlining ( #17598 )
2023-03-11 20:44:45 +02:00
Felipe Pena
ddcc22fe08
checker: fix parenexpr checking on assignment ( #17593 )
2023-03-11 14:56:47 +02:00
Alexander Medvednikov
dc24df9510
cbuilder: change order of functions to improve readability
2023-03-11 14:19:18 +03:00
yuyi
6e4dc82f28
sync: fix error of empty struct channel ( fix #17556 ) ( #17597 )
2023-03-11 12:02:51 +02:00
Felipe Pena
a98376025e
checker: fix missing re-check of recursive generic function ( fix #16962 ) ( #17592 )
2023-03-11 11:57:41 +02:00
Swastik Baranwal
48a03a4874
checker: check wrapped Option types before comparison ( #17590 )
2023-03-11 11:16:12 +02:00
yuyi
b691e1e24a
checker: check struct embed required field ( #17595 )
2023-03-11 11:12:26 +02:00
ChAoS_UnItY
9fa49da9d5
builtin: add rsplit
functions ( #17577 )
2023-03-11 00:07:02 +01:00
Felipe Pena
ee4150f213
v: add a $Option comp-time type, to enable: $for f in Test.fields { $if f.typ is $Option { } }
( #17546 )
2023-03-10 12:17:25 +02:00
yuyi
09c9cbcef9
cgen: fix assign option value using propagate option ( #17578 )
2023-03-10 11:30:46 +02:00
yuyi
038fa6c8ab
checker: remove warning of casting same reference type ( #17579 )
2023-03-10 11:07:09 +02:00
Felipe Pena
23e385ee8a
json: fix json decode/encode with option type ( #17393 )
2023-03-10 10:49:26 +02:00
yuyi
b42a3f43a5
crypto, math: change option to result ( #17580 )
2023-03-10 10:31:05 +02:00
Felipe Pena
32d09544d7
cgen, checker: fix dump() to return option values ( #17563 )
2023-03-09 20:29:25 +02:00
yuyi
71c3b66ecf
datatypes: fix linked list of map ( fix #17570 ) ( #17573 )
2023-03-09 14:26:01 +01:00
Felipe Pena
d353dd6e8a
cgen: fix selector accessing field ( #17567 )
2023-03-09 14:24:43 +01:00
yuyi
737e7f6410
cgen: fix generic array of alias ( #17571 )
2023-03-09 13:57:14 +01:00
Felipe Pena
638805be63
cgen: fix code for unwrap option on print ( #17545 )
2023-03-08 20:55:19 +01:00
Felipe Pena
785546f277
json2: fix decode result with option fields ( #17561 )
2023-03-08 20:54:28 +01:00
Felipe Pena
b19052949f
cgen: fix array initialization with options ( #17562 )
2023-03-08 20:54:00 +01:00
Felipe Pena
a0b3379d4a
cgen: fix fn option-only return print ( #17547 )
2023-03-08 20:53:23 +01:00
Felipe Pena
e253256c30
cgen: fix option unwrap on assignment ( #17551 )
2023-03-08 20:52:24 +01:00
ChAoS_UnItY
ae6a48c0e3
all: rename it
to index
in array inits ( #17543 )
2023-03-08 20:51:45 +01:00
Felipe Pena
2597efa7f6
cgen: fix struct initialization with option value ( #17539 )
2023-03-07 23:53:56 +03:00
Felipe Pena
b4f0bb247d
cgen: fix default initialization of option array with none values ( #17536 )
2023-03-07 23:53:07 +03:00
yuyi
b6c4e88462
checker: check error of casting to interface ( fix #17522 ) ( #17531 )
2023-03-07 23:49:53 +03:00
Felipe Pena
b85f71d00f
cgen: fix default init value for an array of option ( #17538 )
2023-03-07 20:04:16 +02:00
Felipe Pena
792b822091
cgen: fix dump(option_value)
inside a generic function ( #17537 )
2023-03-07 18:13:19 +02:00
Felipe Pena
32751440b6
checker: fix missing check for none type on or block on non-option ( #17529 )
2023-03-07 18:11:03 +02:00
Felipe Pena
68cab00ded
cgen: fix or-block with return void statement ( #17527 )
2023-03-07 15:01:46 +01:00
Felipe Pena
9826310882
cgen: fix struct initialization for nested option struct ( fix #17524 ) ( #17525 )
2023-03-07 09:30:45 +01:00
Felipe Pena
1e416de627
checker: fix const init with comptime ( #17528 )
2023-03-07 09:15:46 +01:00
Ikko Eltociear Ashimine
784592af83
os: fix typo in os.v ( #17519 )
2023-03-07 08:30:37 +01:00
ChAoS_UnItY
6e670ec908
v: support interface field compile time reflection ( #17503 )
2023-03-07 08:52:40 +02:00
Alexander Medvednikov
d7a418fbb5
pref: no-skip-unused
2023-03-06 14:13:29 +01:00
yuyi
65a627d72b
checker: allow aa := AA{}
, when AA
has an option field, that is a struct, that has a [required]
tag on its fields ( #17516 )
2023-03-06 10:16:05 +02:00
Wertzui123
77b6bc1c1a
net.websocket: fix a typo (allready -> already) ( #17512 )
2023-03-06 10:05:17 +02:00
Felipe Pena
7de3485bd2
cgen: fix multi return with option type ( #17489 )
2023-03-05 11:41:19 +01:00
Petr Makhnev
1a48d08d7a
cgen: add calls to all typeof functions for interfaces and sum-types ( #17490 )
2023-03-04 14:59:00 +02:00
Tim Marston
3f8821b8d8
cgen: unwrap and c-mangle field selectors in or blocks ( #17495 )
2023-03-04 11:52:08 +02:00
yuyi
6944d54257
parser, cgen: fix option variable error ( fix #17460 ) ( #17479 )
2023-03-04 11:47:49 +02:00
yuyi
30c205ef2c
cgen: fix printing map reference value ( #17496 )
2023-03-04 11:35:38 +02:00
l-m
6f7192359a
wasm: bug fixes and memory based changes ( #17497 )
2023-03-04 11:24:33 +02:00
Felipe Pena
72cbca9653
checker: fix and improve return stmt error messages ( #17477 )
2023-03-04 09:32:55 +02:00
Felipe Pena
c5832379e7
checker, cgen, parser: fix Option/Result error messages (capitalized) ( #17486 )
2023-03-04 09:02:57 +03:00
Alexander Medvednikov
0ba0fb256f
checker: check the type of SizeOf
2023-03-03 18:45:18 +01:00
walking devel
5454562d2c
checker, parser, orm: remove redundant &
for sum type value arguments to functions with expr &ast.Expr
parameters ( #17482 )
2023-03-03 14:35:12 +02:00
l-m
9c9adb125b
doc: ignore builtin/wasm
( #17480 )
2023-03-03 12:35:21 +02:00
walking devel
5e2ff246c8
cgen: pass sum type values automatically by reference too, when functions require that ( #17476 )
2023-03-03 09:11:15 +02:00
Felipe Pena
904f984367
checker: fix or-block expected type checking ( #17469 )
2023-03-03 08:30:44 +02:00
yuyi
17000ef7b6
checker: check option fn returning error ( fix #17423 ) ( #17438 )
2023-03-02 15:49:50 +02:00
Felipe Pena
8f7c35552d
fmt: fix formatting for $compile_warn ( #17450 )
2023-03-02 15:40:53 +02:00
Delyan Angelov
9fc2860074
checker: fix compiler panic for for k, mut val in app.field[x].values {
( #17468 )
2023-03-02 15:40:14 +02:00
Delyan Angelov
e2daa84a33
ci: add windows and macos jobs for checking the wasm backend too ( #17451 )
2023-03-01 21:53:03 +02:00
l-m
cdc0159c6e
wasm: update the compile flags in binaryen.c.v
to assist darwin ( #17449 )
2023-03-01 14:21:08 +02:00
Felipe Pena
bba7cfee0b
checker: check or-block used on non-option value ( #17444 )
2023-03-01 02:08:18 +02:00
walking devel
3682a9cf88
orm: allow use of mut db orm.Connection ( #17439 )
2023-03-01 00:49:30 +02:00
Felipe Pena
5f4b34ef12
eval: add host API, for passing and receiving values, to/from code, ran by the eval.Eval instances ( #17426 )
2023-03-01 00:42:19 +02:00
Haren S
acfd21e4e0
os: add #include <sys/types.h>
to debugger_darwin.c.v
, to fix bootstrapping on macOS <= 11 ( #17446 )
2023-03-01 00:06:12 +02:00
l-m
0625caad56
wasm: add a webassembly compiler backend, based on using binaryen ( #17368 )
2023-02-28 23:58:53 +02:00
yuyi
b9a8a21094
cgen: fix nested option struct init ( fix #17415 ) ( #17425 )
2023-02-28 14:02:17 +02:00
walking devel
b7b6c2368e
orm: allow using connections, that were explicitly casted to orm.Connection
too ( #17427 )
2023-02-27 23:54:03 +02:00
Petr Makhnev
864e1994b0
vlib/time: format table for custom_format()
( #17428 )
...
* vlib/time: format table for `custom_format()`
* small fix
* small fix
2023-02-27 21:48:05 +02:00
Delyan Angelov
607649b44d
builder: add small diagnostic and instructions for when the C cross compiler for linux->windows is not installed.
2023-02-27 16:59:56 +02:00
paul-elesin
15cb18cbd2
os: make hostname and loginname functions return Result ( #17414 )
2023-02-27 05:21:23 +03:00
yuyi
45d4849b0f
checker: fix returning match expr with custom error ( #17413 )
2023-02-26 07:54:53 +02:00
Delyan Angelov
4c13a4c22c
ci: make websocket_test.v more robust (wait till the websocket server are open for connections, instead of relying on fixed time.sleep delays, which are not enough on the CI)
2023-02-25 19:39:14 +02:00
Delyan Angelov
524c500146
cgen: add requires
to c_reserved
, so that V generated code, can be compiled with -cc g++-11 -no-std -cflags -std=c++20
as well ( #17404 )
2023-02-25 16:50:48 +02:00
Delyan Angelov
cf47a5f978
ci: fix websocket_test.v after a7ae3bf
2023-02-25 14:46:31 +02:00
Felipe Pena
12ec0e9fe1
cgen: support option pointer values - ?&Type
( #17397 )
2023-02-25 14:44:41 +02:00
Petr Makhnev
51bb8cda15
test: fix teamcity runner message escapes ( #17405 )
2023-02-25 14:39:09 +02:00
Delyan Angelov
a7ae3bfa78
ci: fix all ports for the servers started in websocket_test.v
2023-02-25 14:36:54 +02:00
Felipe Pena
9a8f3025f5
cgen: implement option fixed array ( #17400 )
2023-02-24 19:25:31 +02:00
yuyi
2836544978
cgen: minor cleanup of leftover comments in expr() ( #17390 )
2023-02-24 11:03:07 +02:00
Felipe Pena
6b20bddd15
cgen, json2: fix auto str option type generator, and json2 option type handling ( #17388 )
2023-02-24 10:54:45 +02:00
yuyi
acd903484d
parser: fix channel pop with or expression: ch := <-self.item or { return none }
( #17392 )
2023-02-23 16:45:15 +02:00
Felipe Pena
248e9538ca
parser: check for anonymous function param redefinitions ( #17382 )
2023-02-23 16:34:42 +02:00
Felipe Pena
2879afadd4
cgen, checker: fix none checking ( #17364 )
2023-02-22 16:13:02 +02:00
Swastik Baranwal
c173104295
cgen: add &
before ptr arr elements ( #17379 )
2023-02-22 14:10:07 +02:00
Felipe Pena
6682911bc3
cgen: fix print fn + cycle const error message ( #17355 )
2023-02-22 13:38:08 +02:00
Delyan Angelov
612ac69486
ci: fix bootstrapping on macos/freebsd etc
2023-02-21 12:30:35 +02:00
Felipe Pena
82c4338b76
os: move pub fn debugger_present() bool{
to platform-specific files (better ptrace portability handling) ( #17373 )
2023-02-21 10:55:03 +02:00
R cqls
cd00beb099
gg: add toggle_fullscreen and is_fullscreen ( #17371 )
2023-02-20 21:58:04 +02:00
Felipe Pena
cb976c7e17
os: fix the declaration of C.ptrace
(the 4th parameter is a pointer, not an integer) ( #17366 )
2023-02-20 12:29:49 +02:00
yuyi
fcef8c98ee
cgen: fix map of array initialisation, with len and no default ( fix #17358 ) ( #17367 )
2023-02-20 12:26:48 +02:00
Swastik Baranwal
e9a3817aed
checker: disallow enum initalization ( #17361 )
2023-02-19 22:22:07 +01:00
JalonSolov
79b2c34f97
arrays: replace C.memcpy with vmemcpy calls, to make v -shared -Wimpure-v vlib/arrays/
pass ( #17357 )
2023-02-19 19:01:18 +02:00
Felipe Pena
8a1e90fff1
checker: allow none
to be casted to all option types, including aliases ( #17348 )
2023-02-19 18:56:14 +02:00
Felipe Pena
ce1978ecde
parser: disallow defining methods on option receivers - fn (x ?Type) method() {
( #17351 )
2023-02-19 15:00:29 +02:00
yuyi
93a3f5ff7d
builtin, cgen: fix array of struct with map field initialize ( fix #17325 ) ( #17340 )
2023-02-18 20:34:15 +02:00
Felipe Pena
2879c5110c
cgen, check, parser: implement first-class option type ( #17017 )
2023-02-18 11:45:01 +02:00
Felipe Pena
e066d1d3df
cgen: fix missing aggregate rec_type ( #17335 )
2023-02-16 16:36:16 +01:00
Felipe Pena
7f5cba1a38
cgen: add comptime field.name checking ( #17318 )
2023-02-16 11:46:27 +02:00
Ahmad Yasser
cad2cd5583
docs: fix typos using codespell ( #17332 )
2023-02-16 11:43:39 +02:00
walking devel
580dbc3f0e
orm: allow inserting empty objects with db.sqlite (SQLite uses a slightly different SQL dialect) ( #17334 )
2023-02-16 11:34:16 +02:00
yuyi
289993ad7f
checker: fix printing address of integer variable ( #17327 )
2023-02-15 20:05:26 +02:00
Ikko Eltociear Ashimine
2382549df3
math: fix typo in factorial.v ( #17322 )
2023-02-15 19:57:37 +02:00
walking devel
5d4c9dc9fc
checker: allow using struct field as ORM limit and offset. ( #17330 )
2023-02-15 19:47:35 +02:00
zakuro
f5423ed26b
checker: fix warning of unnnecessary default none
value for option struct fields ( #17305 )
2023-02-15 11:42:00 +02:00
Felipe Pena
039c9b2550
cgen, checker: fix comptimeselector resolution + if comptime branching improvement + comptimeselector cleanup ( #17302 )
2023-02-15 11:40:11 +02:00
yuyi
5a8c433548
cgen: fix printing a reference to a function ( #17307 )
2023-02-15 11:27:21 +02:00
yuyi
d0a873ca02
checker: fix printing the address of a struct value with println('${&value:p}')
( #17321 )
2023-02-15 11:20:25 +02:00
yuyi
b6ecd634e3
tests: change option to result in vscript_using_generics_in_os.vsh ( #17306 )
2023-02-14 13:01:35 +02:00
Delyan Angelov
b13f7118ab
os,term: fix C.tcsetattr declaration (add missing int return type)
2023-02-13 15:16:23 +02:00
starryskye
2d3508c872
net.websocket: call close event ( #17300 )
2023-02-13 14:28:41 +02:00
Felipe Pena
16344cfc28
checker: fix sumtype cast of comptime var ( #17287 )
2023-02-13 13:24:36 +01:00
Felipe Pena
fbcb1f3711
checker: disallow &nil ( #17283 )
2023-02-13 13:24:11 +01:00
Felipe Pena
04e00a46d4
cgen, checker: allow array decompose on non-variadic func call (e.g call(...arr)) ( #17284 )
2023-02-13 13:13:52 +02:00
Makhnev Petr
c8c70de87d
docs: unify format of notes ( #17294 )
2023-02-13 10:29:02 +02:00
zakuro
e7fcf66095
tests: add more tests for struct option fields in vlib/v/tests/option_test.v
( #17297 )
2023-02-13 10:02:47 +02:00
Felipe Pena
eb7e1b4712
cgen: fix cast with comptime var ( #17286 )
2023-02-12 07:54:09 +01:00
yuyi
6883561d6d
cgen: fix c_fn_name() for mongo module ( #17282 )
2023-02-11 20:33:41 +02:00
yuyi
90591eb813
checker: check nested struct field with required attr ( fix #10913 ) ( #17277 )
2023-02-11 11:22:31 +02:00
walking devel
03be525c82
orm: allow using reference objects in ORM insert. ( #17279 )
2023-02-11 10:02:55 +02:00
MatejMagat305
ac381f5e5b
docs: add git
to the list of installed prerequisites for V on Termux ( #17276 )
2023-02-10 17:02:02 +02:00
MatejMagat305
c003bfd5d4
docs: add make
to the list of installed prerequisites for V on Termux ( #17269 )
2023-02-10 01:00:33 +02:00
yuyi
7cfbc1cc5f
checker: fix generic array of sumtype push operation ( #17268 )
2023-02-10 00:27:07 +02:00
Felipe Pena
3aecd01d05
tests: add empty_struct_compare_test.v too ( #17270 )
2023-02-10 00:26:41 +02:00
Riccardo
ba9a9fdc2a
builder: fix bug for incorrectly detecting tcc
as icc
, when V was installed in a path containing icc
( #17271 )
2023-02-10 00:24:03 +02:00
MatejMagat305
dcb9c3beb3
cgen: support [spawn_stack: 131072]
fn attribute, for controlling the max size of the stack, of the spawned threads ( #17222 )
2023-02-09 15:57:53 +02:00
yuyi
19ba7c5ceb
parser: fix fn attrs with anon struct param ( #17266 )
2023-02-09 14:10:28 +02:00
yuyi
34efc9c427
checker: fix returning if expr with custom error ( #17265 )
2023-02-09 11:45:46 +02:00
Felipe Pena
47e8d967e6
v.reflection: add type symbol info metadata ( #17188 )
2023-02-08 21:30:44 +02:00
Felipe Pena
fbfdab9e2d
cgen: remove unused generated func ( #17258 )
2023-02-08 21:27:24 +02:00
ChAoS_UnItY
404a9aa442
v: forbid function parameter names, shadowing imported module names ( #17210 )
2023-02-08 20:37:04 +02:00
Delyan Angelov
c16549b6fd
ci: fix VLS compilation after 36dc7fa
2023-02-08 14:04:03 +02:00
Delyan Angelov
6b0b7a9e4f
cgen: fix compilation of vlang/sdl examples
2023-02-08 13:27:59 +02:00
Delyan Angelov
36dc7faf2c
net.openssl: add manual .str() methods for C.SSL and C.SSL_CTX, fix a bug in the V auto str generation as well.
2023-02-08 13:14:12 +02:00
Delyan Angelov
522a9f5908
net.openssl: add V side declaration for C.SSL_CTX too (fix auto .str() method generation for V structs containing references to C.SSL_CTX)
2023-02-08 12:33:21 +02:00
yuyi
6136b62220
cgen: fix method calls to nonarray methods, named first
, last
or repeat
( #17252 )
2023-02-08 10:45:17 +02:00
Delyan Angelov
9794a239b1
sokol.sgl: add wrapper for scissor_rectf too
2023-02-07 12:53:59 +02:00
yuyi
a173f2964e
cgen: minor cleanup in stmt() ( #17240 )
2023-02-07 09:17:10 +02:00
yuyi
223c752460
cgen: fix for in mut array with infix expr ( #17233 )
2023-02-07 00:10:07 +02:00
MatejMagat305
954843c486
os: fix default result of os.temp_dir() for termux ( #17237 )
2023-02-07 00:07:35 +02:00
yuyi
e76e93d230
ast: add comments for ast.AssertStmt and ast.IfGuardExpr ( #17235 )
2023-02-06 16:39:03 +02:00
yuyi
7090e905f7
checker: fix array filter of fn mut argument ( #17231 )
2023-02-06 16:37:37 +02:00
Mehmet Ali
791ef4b4a6
gg: fix gg.scissor_rect behavior on Android ( #17229 )
2023-02-06 12:26:20 +02:00
yuyi
242d6fa1ff
checker: disallow for mut letter in 'abc' {
( #17234 )
2023-02-06 11:58:03 +02:00
yuyi
858ce4e35d
cgen: correct comments for expr_with_tmp_var() ( #17227 )
2023-02-05 14:16:29 +02:00
yuyi
fc65de9bba
checker: check sumtype in unknown type ( #17225 )
2023-02-05 12:02:30 +01:00
yuyi
c40e25b028
cgen: fix assigning option of struct fntype field ( #17224 )
2023-02-05 09:13:19 +02:00
Delyan Angelov
d349648cda
vfmt: fix typename DecompressParams
-> DezParams
in function parameters, on import compress as z
( fix #17216 )
2023-02-05 00:25:14 +02:00
yuyi
e8ca2e62a7
checker: fix if guard with struct option fntype field ( #17220 )
2023-02-04 11:38:07 +02:00
ChAoS_UnItY
0b7a1cd7ce
v: forbid local variable names, shadowing imported module names ( #17197 )
2023-02-03 09:09:41 +02:00
Tim Marston
603469b856
cgen: don't voidptr cast option/result functions ( fix #17204 ) ( #17207 )
2023-02-03 08:50:20 +02:00
Swastik Baranwal
6d63b27c26
checker: disallow function calls returning void, in () expressions, in assignments ( #17205 )
2023-02-03 08:47:52 +02:00
walking devel
8cdc554c63
net.html: fix panic in html.parse() called with empty string, remove replacement of \n
in the original content ( #17206 )
2023-02-03 00:32:03 +02:00
yuyi
b5b1efbb7b
cgen: fix sumtype as cast with calling twice ( #17196 )
2023-02-02 13:57:37 +02:00
Delyan Angelov
6572d597f9
Revert "cgen: fix sumtype as cast with calling twice ( fix #17156 ) ( #17183 )"
...
This reverts commit 90ae3c82c9
.
2023-02-02 10:49:15 +02:00
yuyi
90ae3c82c9
cgen: fix sumtype as cast with calling twice ( fix #17156 ) ( #17183 )
2023-02-02 09:31:11 +02:00
Delyan Angelov
988aed0353
ci: fix broken tests after 322eb81
2023-02-01 23:30:48 +02:00
Alexander Medvednikov
322eb8197d
checker: make null warning an error
2023-02-01 18:01:55 +01:00
MatejMagat305
e70848a98b
dl: add more dlopen flags ( #17184 )
2023-02-01 18:32:35 +02:00
Hitalo Souza
ed58b95a9d
json2: encode array of all and verify sum type ( #17051 )
2023-02-01 15:52:58 +01:00
Christopher Fore
2029d1830f
tools: remove cmd/tools/modules/vhelp/ & add print to v share ( #17178 )
2023-02-01 11:18:23 +02:00
walking devel
02fc58d124
orm: add type checker for where
( #17179 )
2023-02-01 10:53:34 +02:00
Christopher Fore
10261c427f
tools: add v share file.v
( #17172 )
2023-01-31 20:36:17 +02:00
Tim Marston
26b9464f51
gg: setup ctx.window.user_data and ctx.user_data on ctx.run(), instead of in gg.new_context, to allow for embedding gg.Context in ui
( #17169 )
2023-01-31 18:22:20 +02:00
Delyan Angelov
a932a8b1ea
net.http: make the errors that parse_status_line returns more informative to make diagnosing problems easier
2023-01-31 15:26:08 +02:00
Christopher Fore
b3d742d13a
v.help: reorganise the folder layout of the v help topic
text files ( #17155 )
2023-01-31 12:04:01 +02:00
walking devel
d563739264
checker: add type checking for ORM limit
, offset
, and order by
. ( #17095 )
2023-01-31 10:22:02 +02:00
Swastik Baranwal
b487c9d38e
parser: add more precise errors, for fn (p Point) += (q Point) Point {
( #17167 )
2023-01-31 09:36:33 +02:00
Ulises Jeremias Cornejo Fandos
40ec2a292e
vlib: add a new dl.loader module, to simplify dynamic library loading, when the DLLs may be in multiple customisable locations ( #17161 )
2023-01-31 09:27:48 +02:00
Ahmad Yasser
6b20c57246
docs,sync: separate example code blocks with a newline ( #17165 )
2023-01-30 21:25:33 +02:00
Delyan Angelov
5abca37ff7
parser: add a temporary exception for C.statvfs
as well (same name reused for function *and* struct)
2023-01-30 21:11:59 +02:00
Alexander Medvednikov
d1f57ead71
V 0.3.3
2023-01-30 18:20:51 +01:00
Delyan Angelov
62f7e56a18
v.vcache: fix a panic due to a race on creating folders in ~/.vmodules/cache/XY
2023-01-30 19:00:00 +02:00
Alexander Medvednikov
1470eb6fa4
gg: fix native image rendering with with/height=0
2023-01-30 16:06:18 +01:00
Felipe Pena
11f734296f
checker: fix generic array clone ( #17153 )
2023-01-30 11:27:17 +02:00
walking devel
a489417484
orm: detect type mismatching on inserting an object ( #17157 )
2023-01-30 11:26:10 +02:00
l-m
bb512f782e
checker, ast: add field promoted_type
for InfixExpr
, filled in by the checker, to save duplicate work in the backends ( #17158 )
2023-01-29 21:06:05 +02:00
walking devel
4747e70d9d
orm: make last_id() return int
, instead of orm.Primitive
( fix #12110 ) ( #17151 )
2023-01-29 16:00:23 +02:00
Felipe Pena
e6a4f76f82
cgen: fix returing comptime if expressions within functions with an option result ( #17154 )
2023-01-29 15:59:13 +02:00
anusrnm
5cd01ea494
gzip: fix flag location in header ( #17140 )
2023-01-29 13:27:04 +02:00
Swastik Baranwal
7f5f69a78a
checker: check option and result handling in as
casts ( #17133 )
2023-01-29 12:28:14 +02:00
Felipe Pena
cb79e57c1a
cgen: fix generated code for match bar()?.a {
(matchexpr with call expr using propagation) ( #17150 )
2023-01-29 12:11:30 +02:00
walking devel
9a86456365
cgen: support string interpolation in ORM queries ( #17141 )
2023-01-29 01:27:34 +02:00
yuyi
d3e4058aec
cgen: fix printing for mut v in arr ( #17137 )
2023-01-28 10:15:28 +02:00
Felipe Pena
b732dd6816
cgen: fix opt member eq operation ( #17134 )
2023-01-28 10:13:11 +02:00
walking devel
e064743c73
parser: recursively search undefined variables in the where
parts of SQL statements ( #17136 )
2023-01-28 10:07:02 +02:00
Nahua
1d4fd53344
net.http: add documentation to http, method, server, and status ( #17130 )
2023-01-27 13:58:55 +02:00
MatejMagat305
fe157db0ce
v: support an optional fn cleanup() {
in each module, to complement the existing optional fn init() {
( #17119 )
2023-01-27 11:31:03 +02:00
walking devel
a9a04bba55
orm: support fn calls in where
( #17127 )
2023-01-26 22:36:30 +02:00
l-m
c14d15bd3d
ast,checker,parser,cgen: [c:'sym']
rework; allow compiling code from .v files tagged with [translated]
without needing -translated too ( #17125 )
2023-01-26 17:47:38 +02:00
Makhnev Petr
6365d9e070
checker: forbid var declaration in post statement of for loop ( #17120 )
2023-01-26 17:40:10 +02:00
Makhnev Petr
15c0a73740
checker: fixed error pointer for "redefinition of key iteration variable" and "redefinition of value iteration variable" errors ( #17121 )
2023-01-26 12:31:35 +02:00
Nahua
21b17fe234
io: add missing documentation and edit existing ones ( #17105 )
2023-01-25 22:03:20 +02:00
Felipe Pena
84b99ceeb2
vlib: add a v.reflection
module for reflection done at runtime ( #17072 )
2023-01-25 22:01:22 +02:00
Swastik Baranwal
e32ed368ca
ast, checker, parser: add enum type pos ( #17112 )
2023-01-25 21:59:28 +02:00
Delyan Angelov
86f8c55107
ast: improve the support for #flag comptime_known_define something
(support #flag wasm32_emscripten etc
)
2023-01-25 17:38:47 +02:00
Delyan Angelov
d2e5c721a0
net: allow more fine grained control over socket shutdowns
2023-01-25 12:34:39 +02:00
walking devel
b34c55ffd6
ast: fix TypeSymbol.is_primitive
, add TypeSymbol.is_bool
( #17106 )
2023-01-25 08:38:59 +02:00
Makhnev Petr
0874376db0
builtin: fix wrong module name imported in vlib/builtin/linux_bare/old/.checks/linuxsys/linuxsys.v
( #17102 )
2023-01-24 22:19:30 +02:00
Makhnev Petr
17d65db828
builtin: add string.trim_indent()
` method ( #17099 )
2023-01-24 21:41:25 +02:00
Makhnev Petr
5aad0db0f7
parser: improve error for prefix inc/dec statement --a
/++mp["id"]
( #17090 )
2023-01-24 10:08:35 +02:00
Makhnev Petr
91799a1742
checker: add error for inc/dec for non lvalue ( #17091 )
2023-01-24 10:03:37 +02:00
Roy Ivy III
5cd074a49e
builtin: improve multi-platform portability for string.split_into_lines()
( #17078 )
2023-01-24 10:02:25 +02:00
Nahua
da3ad2dca6
gx: add missing documentation or update existing ones for public functions ( #17094 )
2023-01-24 02:02:07 +02:00
walking devel
8b6fceb0a3
cgen: fix -autofree with arr[idx] or { default }
( #17096 )
2023-01-24 00:53:26 +02:00
MatejMagat305
6d223b9a26
builtin: add a map.reserve/1 method ( #17052 )
2023-01-23 11:07:25 +02:00
Makhnev Petr
3a9355d898
change or{}
to or {}
as most other places ( #17082 )
2023-01-23 11:05:34 +02:00
yuyi
865c0ea8bd
checker: check generic struct no_keys init ( fix #17061 ) ( #17067 )
2023-01-22 19:11:12 +02:00
Thomas Peißl
3aeb6179b7
os: rework mv so it works with different partitions (add fallback to os.mv_by_cp + tests) ( #17065 )
2023-01-22 19:02:04 +02:00
yuyi
a929466130
checker: minor cleanup in infer_fn_generic_types() ( #17068 )
2023-01-22 15:02:08 +02:00
yuyi
b2dac566b0
checker: check fn call using 'none' as argument ( #17070 )
2023-01-22 14:58:34 +02:00
Delyan Angelov
f69b994c73
os: properly document os.uname, for both nix and windows
2023-01-22 13:18:28 +02:00
Roy Ivy III
dd55365dee
os: cleanup the output of os.uname() on windows ( #17066 )
...
* os: (WinOS) mimic current practices of `busybox` and `coreutils`
* os: trim any possible surounding whitespace
2023-01-22 11:59:42 +02:00
Delyan Angelov
0bafd237ee
ast: fix const dependency order for consts initialised with ast.SelectorExpr ( fix #15049 ) ( #17064 )
2023-01-22 09:34:46 +02:00
Hitalo Souza
0ac6ba9354
json2: encode sumtype ( #17041 )
2023-01-21 20:26:55 +02:00
Hitalo Souza
1d51f3109f
json2: improve the performance of encode ~2x ( #17050 )
2023-01-21 10:45:38 +02:00
yuyi
630fb2af37
cgen: fix generic struct no_key init ( #17059 )
2023-01-21 10:42:15 +02:00
Hitalo Souza
1c6195c1b6
bench: jump to the top level functions in bench_json_vs_json2.v ( #17054 )
2023-01-21 10:40:12 +02:00
Hitalo Souza
9a43fa9668
bench: add more benches of json vs x.json2, separated by type ( #17043 )
2023-01-20 19:11:50 +02:00
yuyi
222eb86e6e
tests: correct the test comment in generic_fn_with_alias_arg.vv ( #17048 )
2023-01-20 18:53:42 +02:00
Delyan Angelov
46e4317643
benchmark: adjust the documentation for Benchmark.measure
2023-01-20 17:22:49 +02:00
MatejMagat305
d2bde39347
v.cflags: use strings.Builder instead of concatenation for constructing flags ( #17049 )
2023-01-20 16:20:36 +02:00
Nahua
90dbf683d5
term: add missing documentation for all remaining public functions ( #17044 )
2023-01-20 11:07:28 +02:00
MatejMagat305
25f1b713aa
crypto.pem: add Block.free() method ( #17045 )
2023-01-20 10:49:45 +02:00
phoebe
fed6524803
vlib: add a crypto.pem module ( #17034 )
2023-01-19 17:01:11 +02:00
Thomas Peißl
ba1b31700e
os: add hint for mv_by_cp to mv ( #17036 )
2023-01-19 16:50:57 +02:00
John
4098612a87
rand: add full precision f32 and f64 random functions; fix f32/f64 multipliers ( #16875 )
2023-01-19 15:21:47 +02:00
Delyan Angelov
550cae931f
bench: add bench_random_number_generation.v
2023-01-19 15:19:29 +02:00
Delyan Angelov
92c7e3f7ff
checker: relax checks on operators done on aliases of primitives like int, u8, string etc.; add tests ( #17029 )
2023-01-19 11:45:56 +02:00
Delyan Angelov
bee355eb65
all: cleanup sqlite.connect statements (do not leave strange test.db or vweb.sql artefacts around, after running common tests)
2023-01-19 09:45:07 +02:00
Minsoo
36834be2ad
all: fix the remaining deprecated import sqlite
statements ( #17021 )
2023-01-19 09:37:55 +02:00
Nahua
b69f9419f0
term: add missing documentation for all public functions in colors.v ( #17033 )
2023-01-19 09:09:09 +02:00
Minsoo
d850d3caba
net.html: add get_tags_by_class_name ( #17024 )
2023-01-18 19:00:46 +02:00
yuyi
6688c0f3d7
checker: fix generic fn infering error with alias argument ( #17026 )
2023-01-18 18:59:02 +02:00
Hitalo Souza
525c5e237a
x.json2: add json2.map_from(t T) ( #16797 )
2023-01-18 18:55:04 +02:00
Delyan Angelov
2c78078814
cleanup: fix old usages of os.write_file/2?
to os.write_file/2!
2023-01-18 12:28:10 +02:00
yuyi
6a9688ce9d
checker, cgen: fix for mut i in arr { i = i * i }
( #17020 )
2023-01-18 09:22:38 +02:00
Delyan Angelov
1cad788779
checker: add error for type Alias = map[string]Alias
( fix #17008 ) ( #17015 )
2023-01-18 01:34:43 +02:00
yuyi
88dab8fc2d
all: clean up multiple 'is' infix expr ( #17005 )
2023-01-17 20:27:09 +02:00
walking devel
2fb9bdce9a
cgen, checker: add panic in ORM for invalid queries, when there are no or {}
blocks, add type checking for the fkey
attribute, add tests ( #16977 )
2023-01-17 20:21:10 +02:00
Nahua
93ee6d107a
encoding.base32: add missing documentation for all public functions ( #16998 )
2023-01-17 19:46:43 +02:00
Felipe Pena
5dbdb211dc
cgen: fix assignment from comptime var ( #16999 )
2023-01-17 19:39:19 +02:00
yuyi
a22dfe0ddf
cgen: minor cleanup in dump_expr() ( #17006 )
2023-01-17 17:11:04 +02:00
Delyan Angelov
75d6cb9c3a
checker: protect against unlimited recursion in Checker.ensure_generic_type_specify_type_names
2023-01-17 13:07:27 +02:00
yuyi
2034dcb4ed
ast: fix const values defined in the wrong order ( #17002 )
2023-01-17 12:12:54 +02:00
yuyi
930e629d2e
cgen: fix struct init with chan field ( #17001 )
2023-01-17 05:50:11 +01:00
Felipe Pena
1302dbf02f
checker: fix for..in statement with ComptimeSelector ( #16997 )
2023-01-17 05:49:45 +01:00
yuyi
f57b16a843
all: clean up multiple !is infix expr ( #16993 )
2023-01-17 05:48:44 +01:00
Felipe Pena
f634c6e0a4
checker: fix postfix var checking break ( #16984 )
2023-01-17 05:47:51 +01:00
yuyi
21807f94a2
checker: check unsafe map index operation ( #17000 )
2023-01-17 05:47:16 +01:00
MatejMagat305
6bf6a40e0c
crypto: add .free() and .reset() methods to reduce memory leaks with -autofree ( #16992 )
...
* Fix unsafe pointer
I was compile vab with '-prod' and it was needed to fix and it is of course warning
* Add files via upload
* reduce memory leak s sha512
* add method .free() and .reset() for some
2023-01-16 17:30:40 +02:00
MatejMagat305
92fd12c18a
crypto.sha256: add .free() and .reset() methods to reduce memory leaks with -autofree
( #16991 )
2023-01-16 13:23:46 +02:00
yuyi
e5fb457b19
checker: fix map with reference value ( #16990 )
2023-01-16 11:45:22 +02:00
Hitalo Souza
55787ff78f
json2: refactor, doc, perf, test, errors ( #16986 )
2023-01-15 22:52:48 +01:00
Alexander Medvednikov
7a9a82879b
checker: use a notice for now
2023-01-15 22:38:31 +01:00
Alexander Medvednikov
aba7bcde85
checker: turn the pointer map notice into a warning and fix all code using it
2023-01-15 22:19:25 +01:00
Swastik Baranwal
e8108f21e0
checker: check option and result handling in type-casted aliases ( #16988 )
2023-01-15 23:09:30 +02:00
Nahua
5f30110e2c
hash: document all public functions ( #16987 )
2023-01-15 22:37:09 +02:00
Hitalo Souza
7db7951bd0
x.json2: fix : #16975 ( #16983 )
...
* fix : #16975
* test
* Update vlib/x/json2/json2.v
Co-authored-by: Delyan Angelov <delian66@gmail.com>
* minor refactor
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2023-01-15 22:09:02 +02:00
Delyan Angelov
bfb47005c8
net.openssl, net.mbedtls: add support for -d trace_ssl
, for easier tracing of binary protocol problems to https servers
2023-01-15 16:06:46 +02:00
Delyan Angelov
d4320863fe
net: fix compilation with -d trace_tcp_data_write
and -d trace_tcp_data_read
; add .hex() dumping too for easier diagnosing of binary protocol level problems
2023-01-15 13:25:23 +02:00
Hitalo Souza
28cbaf66b8
json2: refactoring and fixes ( #16893 )
2023-01-15 12:30:33 +02:00
Felipe Pena
4d2c767dcb
checker: fix for $if field.unaliased_typ is $Int {
( #16982 )
2023-01-15 12:27:08 +02:00
Delyan Angelov
e8e1df6df9
tests: make VTEST_ONLY=panic ./v vlib/v/slow_tests/inout/compiler_test.v
more useful as a filter
2023-01-15 11:38:37 +02:00
Delyan Angelov
2b4c60d07f
tests: sort the .vv files in vlib/v/slow_tests/inout/compiler_test.v, before testing them, to have more predictable output
2023-01-15 11:34:10 +02:00
Alexander Medvednikov
877a1e511a
checker: require unsafe for accessing a pointer map value
2023-01-15 02:47:13 +01:00
yuyi
7fd9b62b34
parser: fix type alias of fn with mut argument ( #16974 )
2023-01-14 21:38:46 +02:00
Hitalo Souza
199db81b23
json2: refactor after #16951 ( #16976 )
2023-01-14 21:30:29 +02:00
Felipe Pena
dbfb9c3a90
cgen, checker: var type checking at compile-time ( #16951 )
2023-01-14 16:20:12 +02:00
Delyan Angelov
b19db3a207
ci,term: add a term.set_tab_title/1 shim for windows too (for now just calling term.set_terminal_title/1)
2023-01-14 15:10:12 +02:00
Felipe Pena
71e8fc8b38
checker: fix comptime if branch checking ( #16938 )
2023-01-14 15:06:38 +02:00
Felipe Pena
80cd9f820a
checker,cgen: allow ?.str() on compile-time fields var ( #16969 )
2023-01-14 15:04:13 +02:00
Delyan Angelov
6adafbb6ea
term: add a separate term.set_tab_title/1 API for controling the current tab title in emulators like Konsole, that support many tabs
2023-01-14 12:00:39 +02:00
l-m
ca000292f1
cgen,js: support [autostr: allowrecurse]
attribute, for allowing deep printing of data structures with pointer fields (trees, instead of graphs with cycles) ( #16973 )
2023-01-14 11:30:39 +02:00
Delyan Angelov
7c571c0945
term: fix set_terminal_title on nix
2023-01-14 11:08:49 +02:00
yuyi
fd07f7df69
cgen: fix printing struct having fields of arrays of anonymous structs ( #16953 )
2023-01-14 00:41:31 +02:00
Felipe Pena
41b9e513ca
parser: add a better error message, for multiple attributes, used on the same struct field ( #16954 )
2023-01-13 23:27:46 +02:00
Ahmad Yasser
3832f076c5
docs: fix all db.pg docs being italic in html format ( #16971 )
2023-01-13 23:25:24 +02:00
Swastik Baranwal
89aa695fba
checker: disallow non ptr struct values to voidptr fields ( #16958 )
2023-01-13 17:05:18 +02:00
yuyi
64558df764
vlib: move the mysql/sqlite/pg/mssql modules under vlib/db ( #16820 )
2023-01-13 17:02:32 +02:00
walking devel
2d8f160ef1
checker: replace the go
keyword in error messages with spawn
( #16960 )
2023-01-13 13:23:51 +02:00
zakuro
c766ce4fe5
fmt: fix removal of selective imported types, used as array elements ( #16963 )
2023-01-13 09:30:28 +02:00
Felipe Pena
ba091a36dd
checker: fix unreachable code checking for sql ORM blocks ( #16948 )
2023-01-12 15:36:44 +02:00
Delyan Angelov
33191e4538
ci,pg,net.openssl: fix pkgconfig paths for macos-12
2023-01-12 15:22:08 +02:00
yuyi
148d57827c
parser, fmt: fix fmt in struct declarations with a fields, declared to be arrays of anonymous structs ( fix #16947 ) ( #16952 )
2023-01-12 13:21:29 +02:00
yuyi
329b9f1a6a
parser, fmt: fix fmt error in $tmpl(path)
( #16949 )
2023-01-12 06:03:38 +01:00
Delyan Angelov
49a434e11f
pg: fix compilation on macs with clang (libpq installed through brew)
2023-01-12 02:21:32 +02:00
Delyan Angelov
131086b647
ci: workaround for $if prod {
not working properly with msvc
2023-01-12 00:02:27 +02:00
Delyan Angelov
00cef70220
ci: fix -prod
compilation of sokol apps
2023-01-11 22:37:41 +02:00
Delyan Angelov
d9339b09d6
sokol.memory: fix message logs on Android
2023-01-11 16:37:20 +02:00
yuyi
3f8aa77990
parser: fix tmpl using variable or const path argument ( fix #16941 ) ( #16943 )
2023-01-11 13:31:48 +02:00
Swastik Baranwal
b872487d82
cgen
: allow ORM to work with DB aliases (#16939 )
2023-01-11 11:58:55 +02:00
Delyan Angelov
e854051c1f
thirdparty: update all sokol and fontstash headers with their upstream versions ( #16940 )
2023-01-11 11:29:38 +02:00
Hitalo Souza
d1306ffcf5
checker,json2: relax checking of x.enum = integer at comptime; refactor json2 to clean it up ( #16926 )
2023-01-11 10:18:45 +02:00
Felipe Pena
09f48455c5
checker,cgen: allow method.name checking in comptime ( #16931 )
2023-01-10 19:45:06 +02:00
Hitalo Souza
cf95d77584
json2: small refactor after #16896 ( #16911 )
2023-01-10 11:08:11 +02:00
Delyan Angelov
1582db1a0a
comptime: add support for T is $Alias
and T is $Function
( #16929 )
2023-01-10 08:49:04 +02:00
Delyan Angelov
6a32c81070
tests: extract slow tests (prod, valgrind, inout, repl etc), from vlib/v/tests/ to vlib/v/slow_tests/ ( #16892 )
2023-01-09 23:47:03 +02:00
Hitalo Souza
33a99fe833
json2: fix encoding of struct fields that are aliases ( #16925 )
2023-01-09 22:43:01 +02:00
Yochem van Rosmalen
0109fe66a6
os: make os.FileMode public ( #16923 )
2023-01-09 22:34:36 +02:00
Felipe Pena
51907618c3
cgen: fix code generated for a match expression, which returns function ( #16922 )
2023-01-09 22:30:35 +02:00
Swastik Baranwal
413a8b5f87
comptime: implement field.is_enum ( #16920 )
2023-01-09 20:12:07 +02:00
yuyi
c2eb4d7065
cgen: fix result or option of multi return ( fix #16873 ) ( #16915 )
2023-01-09 16:20:15 +02:00
yuyi
286350aa9b
cgen: fix json
encoding of structs with option fields (skip the fields with a value of none
) ( #16916 )
2023-01-09 15:33:08 +02:00
JalonSolov
90941b3b1f
all: change optional to option ( #16914 )
2023-01-09 09:36:45 +03:00
yuyi
241109516f
checker, cgen: fix aliased optional or result fn call ( #16908 )
2023-01-08 20:04:17 +02:00
Hitalo Souza
fed8b49e46
vweb: add the v new <name> web
command for starting new projects to the README.md ( #16904 )
2023-01-08 18:33:17 +02:00
Felipe Pena
1b78f430ab
checker, cgen: support $if T in [$Array, $Struct[operator for comptime type checking ( #16896 )
2023-01-08 18:22:10 +02:00
MatejMagat305
a99149334c
sync.pool: fix pointer cast warning ( #16902 )
2023-01-08 12:34:46 +02:00
Felipe Pena
a60f34e6dd
cgen: fix array_init generated code for reference var ( #16894 )
2023-01-07 12:04:04 +02:00
Swastik Baranwal
2aced13942
checker: disallow all operations beside assignment, on multi return values ( #16890 )
2023-01-07 11:53:20 +02:00
Felipe Pena
7fa7fec304
cgen: minor refactor - reduce repeated code ( #16886 )
2023-01-07 11:49:57 +02:00
Delyan Angelov
de2ed7497a
ci: update struct_init_with_interface_pointer_and_embed_test.v to match 2119a24
2023-01-06 15:01:33 +02:00
Delyan Angelov
725456cde0
ci: fix warnings in v -cc gcc -keepc -freestanding -o bel vlib/os/bare/bare_example_linux.v
2023-01-06 14:55:01 +02:00
Delyan Angelov
2119a240e8
checker: follow up to 43d8bc3
, separate setting the default type for fields with default expressions into its own independent loop
2023-01-06 14:47:57 +02:00
Felipe Pena
3b594d6cd8
checker, cgen: allow iterating over optional array fields ( #16858 )
2023-01-06 09:33:11 +03:00
Alexander Medvednikov
868908b80d
checker: require unsafe for Struct(voidptr) casts
2023-01-06 09:28:11 +03:00
Delyan Angelov
43d8bc30f9
checker: fix unset type of a pointer field with default value, when a struct contains an embed ( fix #16882 ) ( #16883 )
2023-01-05 19:53:37 +02:00
Swastik Baranwal
da68b2d369
checker: remove c.pref.is_test
exception for calling private methods in _other_ modules ( #16872 )
2023-01-05 15:41:18 +02:00
Hitalo Souza
3598e7d08e
orm: add tests for fkey:
relationship attribute and retrival of joined rows ( #16877 )
2023-01-05 15:20:15 +02:00
Hitalo Souza
8f217c00e5
x.json2: refactor/fix json2.encode, add more tests ( #16790 )
2023-01-05 15:17:38 +02:00
Felipe Pena
e3aee748ac
cgen: fix code generated for optional comptime var ( #16854 )
2023-01-05 10:54:51 +02:00
Delyan Angelov
19c9633896
builder: show a hint about v .
, on unknown errors, suggesting that the user tried to compile a single .v file from a multi file project ( #16878 )
2023-01-05 07:45:23 +02:00
Delyan Angelov
66438391d0
v.token,v.parser: use p.tok.kind.precedence(), instead of p.tok.precedence(), since token.Token struct values, are much larger, than just the token.Kind enum values
2023-01-04 17:50:51 +02:00
Delyan Angelov
f9e8a91cd0
v: move cmd/v/help/ to vlib/v/help, to simplify the interaction between module lookup & v recompilation ( #16867 )
2023-01-04 14:01:05 +02:00
yuyi
b8571c964d
cgen: fix json encode struct with optional field ( #16866 )
2023-01-04 12:41:07 +02:00
yuyi
0a6fc6d280
checker: fix generic stack of sumtype push() ( #16855 )
2023-01-03 18:29:29 +02:00
yuyi
2378b71f22
cgen: fix comptime if expr with optional or result call ( #16853 )
2023-01-03 14:38:08 +02:00
Swastik Baranwal
09766c44b6
checker: disallow struct{...val.$(field.name)}
( #16852 )
2023-01-03 10:21:32 +02:00
Hitalo Souza
2e54a8cb0e
x.json2: update tests ( #16847 )
2023-01-03 10:16:36 +02:00
Felipe Pena
bd2b216ac7
cgen,checker: fix method call with comptime var ( #16844 )
2023-01-03 10:14:23 +02:00
Delyan Angelov
3625a74ec5
os: add test for os.open_append ( #16846 )
...
* os: add test for os.open_append
* fix unclosed file in test_eof (it made os.open_append fail only on windows, since it got the previous file content, because the file was locked, and os.rm could not delete it)
2023-01-03 01:11:35 +02:00
Keito Tobichi
d5b9f7d026
io: fix typos ( fix #16839 ) ( #16840 )
2023-01-02 20:20:52 +02:00
Felipe Pena
b0d39814be
cgen, checker: fix conditional evaluation and code generation for $if/$else $if/$else for known true conditions ( #16823 )
2023-01-02 20:14:12 +02:00
yuyi
f71572a50f
parser: fix array of functions direct call ( #16838 )
2023-01-02 14:12:07 +02:00
yuyi
9d49b69b69
ast: fix inferring generic struct ( fix #16830 ) ( #16831 )
2023-01-01 17:36:18 +02:00
yuyi
51bb630ea4
checker: fix generic fn with short generic struct init syntax ( #16828 )
2023-01-01 09:14:55 +02:00
JalonSolov
aaf3e25c3f
websocket: simplify and better handle handshake ( #16829 )
2023-01-01 09:04:09 +02:00
Delyan Angelov
3364bf8600
cgen: add g.push_existing_comptime_values and g.pop_existing_comptime_values, use them inside Gen.comptime_for ( #16821 )
2022-12-31 18:29:19 +02:00
yuyi
1c151fbec9
cgen: fix struct optional field zero init ( #16814 )
2022-12-31 17:36:14 +02:00
Makhnev Petr
04cb6ae65f
tests: improve Teamcity test runner ( #16817 )
2022-12-31 17:26:18 +02:00
mfont
1e401d1433
bcrypt: fix issue #16769 security problem in compare_hash_and_password ( #16815 )
2022-12-31 17:18:43 +02:00
Felipe Pena
5daf39bc6a
cgen: fix typeof with comptime var ( #16816 )
2022-12-31 15:57:55 +02:00
yuyi
15c9153f1d
cgen: fix fixed array literal range index ( #16812 )
2022-12-30 13:59:54 +02:00
Felipe Pena
c10bc09e83
checker, cgen: allow $for in alias type ( #16810 )
2022-12-30 11:27:01 +02:00
Felipe Pena
f4cd3931fb
cgen: fix dump fn name using generic var ( #16805 )
2022-12-30 11:16:59 +02:00
Swastik Baranwal
828cd4fe79
checker: add check for implicit fixed array decomp in function varargs ( #16806 )
2022-12-30 01:06:41 +02:00
Felipe Pena
c7f1db2b8a
cgen: cleanup uneeded C code, when using selectorexpr on $if ( #16802 )
2022-12-29 20:30:42 +02:00
Delyan Angelov
6229f48830
checker,cgen: implement support for the new FieldData.is_alias field (part 2, follow up to a6bf20f
)
2022-12-29 19:14:13 +02:00
yuyi
6a8b6c010c
repl: minor cleanup in runner.v ( #16804 )
2022-12-29 17:55:57 +02:00
yuyi
36ab78d6da
parser, cgen: fix anon fn optional call in if expr ( #16803 )
2022-12-29 17:53:17 +02:00
Delyan Angelov
cd4ea16609
cgen: add more detailed cgen stage timing info on -show-timings
2022-12-29 17:33:40 +02:00
Delyan Angelov
a6bf20f3be
builtin: add .is_alias to FieldData too (part 1, unimplemented yet)
2022-12-29 12:43:55 +02:00
yuyi
f4b110b1a4
vrepl: fix $tmpl('hello.txt') ( fix #16789 ) ( #16793 )
2022-12-29 11:30:25 +02:00
Felipe Pena
ed06618498
cgen: fix generic func arg type when passing array compile-time field ( #16798 )
2022-12-29 11:23:57 +02:00
Felipe Pena
2ebd3f0cdb
checker,cgen: make boolean field.is_<field> accessible at compile-time as well ( #16796 )
2022-12-29 00:19:47 +02:00
Swastik Baranwal
ad9ca349dc
cgen: fix generics array delete ( #16794 )
2022-12-29 00:15:47 +02:00
Delyan Angelov
4718a818b8
vfmt: fix alignment of value formatting for "x := {.
: 1, ♖
: 2}"
2022-12-28 18:06:32 +02:00
Felipe Pena
0f37ff197b
checker: fix fn call with generic []T arg ( #16781 )
2022-12-28 11:05:11 +02:00
yuyi
b171102b03
os: minor optimization in os.v ( #16791 )
2022-12-28 10:28:47 +02:00
yuyi
b9996619d5
cgen: fix result/option breaks execution order in if statements ( fix #16663 ) ( #16778 )
2022-12-28 10:26:39 +02:00
Felipe Pena
c5c7b3a054
checker: fix comptime var param passing with comptime selector ( #16777 )
2022-12-27 15:14:58 +02:00
Delyan Angelov
a8f6f9ed60
checker: more precise error handling of large binary literals like 0b1000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000 ( #16775 )
2022-12-27 15:13:15 +02:00
Delyan Angelov
508bfbf892
time: do not panic for time.parse("2020-02-02 20.02.20")!
, just return an error instead ( fix #16779 )
2022-12-27 13:01:01 +02:00
Delyan Angelov
6b3f8f519d
cgen: fill in the new FieldData
fields, add tests ( #16774 )
2022-12-26 23:35:13 +02:00
Felipe Pena
9b28a7aa96
checker,cgen: fix comptime value recognition on generic arguments ( #16768 )
2022-12-26 18:44:18 +02:00
yuyi
3a1e7b71ea
cgen: fix array filter with an inline closure ( fix #16770 ) ( #16772 )
2022-12-26 16:14:28 +02:00
Delyan Angelov
3d545ee0cd
builtin: add more fields to FieldData (will be implemented later in a PR, to ease bootstrapping)
2022-12-26 16:05:14 +02:00
Delyan Angelov
94a36c5ca4
tests: remove module main
from tests, that do not need to be internal
2022-12-26 15:31:23 +02:00
yuyi
68883fc4d9
os: fix os.file_ext('/tmp/.gitignore')
previously returning '.gitignore' => it now returns '' ( #16771 )
2022-12-26 12:53:38 +02:00
yuyi
64ed007f94
cgen: fix generic struct init with inconsistent generic optional types ( #16766 )
2022-12-25 12:06:13 +02:00
yuyi
21d6bd930e
ast, cgen: fix printing nested generic struct ( #16758 )
2022-12-25 09:57:16 +02:00
Felipe Pena
6a179a2926
checker: add int signedness mismatch checking for function call arguments ( #16750 )
2022-12-24 06:28:35 +02:00
yuyi
0128d2dd1c
ast, parser: fix wrong type name of nested generics ( #16749 )
2022-12-24 06:19:51 +02:00
Charles WANG
9dbc2afc5b
net.html: fix typo in README.MD ( #16747 )
2022-12-23 09:37:08 +02:00
Felipe Pena
b21e5b71ba
cgen: fix call arg type changing on match expr ( #16744 )
2022-12-23 01:58:52 +02:00
Delyan Angelov
fc5826b7ca
cgen: minimise sizeof(EmptyStruct)
to 0 for gcc/clang and to 1 for tcc/msvc, by changing EMPTY_STRUCT_DECLARATION and EMPTY_STRUCT_INITIALIZATION ( #16733 )
2022-12-22 21:47:39 +02:00
yuyi
e01dac885c
builtin: fix m.len to 0, after calling map.clear() ( #16720 )
2022-12-22 21:36:33 +02:00
Delyan Angelov
f9043c84a7
builtin: optimise the initialisation of the common 1 byte element arrays []u8
2022-12-22 20:41:32 +02:00
Delyan Angelov
8f8a186158
builtin: support -d trace_vmemset
, -d trace_vmemcmp
, -d trace_vmemmove
and -d trace_vmemcpy
too
2022-12-22 20:08:53 +02:00
Delyan Angelov
b67705f568
builtin: move the -d trace_*alloc
lines at the start of their corresponding functions, implement -d trace_memdup
too
2022-12-22 19:36:15 +02:00
Delyan Angelov
3da4f37b01
cgen: improve generated source compatibility with latest Alpine (lacking libexecinfo-dev and execinfo.h) and the prebuilt tcc ( #16743 )
2022-12-22 15:01:51 +02:00
yuyi
e519bdf0eb
checker: check generic method receiver type mismatch ( #16739 )
2022-12-22 13:37:46 +02:00
yuyi
82a3551313
checker, cgen: fix match expr with branch returning ( #16741 )
2022-12-22 12:55:44 +02:00
Swastik Baranwal
3c5cfa22d1
parser: disallow the array init: attr, when the len: attr is not provided ( #16735 )
2022-12-21 21:24:16 +02:00
Delyan Angelov
87f8069728
ci: fix warnings for compiling builder_test.v too
2022-12-21 21:14:21 +02:00