Casper Kuethe
d0214a254e
vweb: vweb.csrf re-implementation ( #18220 )
2023-05-21 01:56:17 +03:00
yuyi
adcf47dcce
checker: appending to an array of sumtype ( #18201 )
2023-05-20 02:25:26 +03:00
Mark aka walkingdevel
1e9dcb9b9e
checker: refactor, comments, simplify. ( #18203 )
2023-05-20 02:24:30 +03:00
yuyi
94217571cd
parser, checker, cgen: fix swapping arrays ( #18204 )
2023-05-20 02:23:50 +03:00
yuyi
332235548e
checker: clean up in array_init() ( #18205 )
2023-05-20 02:21:52 +03:00
Petr Makhnev
9d0a1d8496
builtin: speed up string methods with vmemcpy instead of for
loop for copying data ( #18211 )
2023-05-19 21:24:23 +03:00
Turiiya
aded6088e9
vet: allow vetting files with global variables ( #18195 )
2023-05-19 16:28:01 +03:00
Petr Makhnev
a39c26507c
builtin: speed up string concatenation and repeat()
method with vmemcpy instead of for
loop for copying data ( #18206 )
...
These changes almost do not speed up the program with the `-prod` flag,
since modern С compilers can do such optimization on their own, but in
normal mode, the performance gain is from 1.6 (concatenation) to 1.8 (repeat) times.
Concatenation:
Old (`for` loop):
Time (mean): 3.699 s +- 0.071 s [User: 3.629 s, System: 0.069 s]
Range (min ... max): 3.548 s ... 3.741 s 10 runs
New (vmemcpy):
Time (mean): 2.305 s +- 0.065 s [User: 2.263 s, System: 0.041 s]
Range (min ... max): 2.172 s ... 2.355 s 10 runs
`vmemcpy version` ran 1.60 +- 0.05 times faster than 'for loop version'
2023-05-19 16:18:23 +03:00
Alexander Medvednikov
cc47c78f39
net.mbedtls: make compile with -prod
2023-05-18 11:31:53 +02:00
Felipe Pena
9d9785cc05
all: allow fixed array returns ( #17931 )
2023-05-18 11:30:49 +02:00
kbkpbot
c8d2098a14
net.websocket: make thread safe/concurrent ( #18179 )
2023-05-18 11:27:00 +02:00
Felipe Pena
1e88b1ab3e
cgen: fix missing panic message for 'option not set' on debug ( #18168 )
2023-05-18 11:25:19 +02:00
Felipe Pena
273f46f810
checker: fix generic argument resolution when mixed order on next call ( #18192 )
2023-05-18 11:24:06 +02:00
yuyi
2bb24ee739
fmt: implement comments inside sumtype declaration ( #18189 )
2023-05-18 11:22:26 +02:00
yuyi
ddb8e09fec
parser, checker: fix generic fn variable assignment in generic fn ( #18180 )
2023-05-17 03:06:33 +03:00
yuyi
35f2a0fb66
fmt: fix formating of fn decl with end comments ( #18181 )
2023-05-17 03:05:59 +03:00
Swastik Baranwal
ee7d34e650
checker: allow i32
in enum MyEnum as i32 {
( #18172 )
2023-05-16 08:09:13 +03:00
Felipe Pena
a7f84e79f8
cgen: fix option unwrap from ovoid function ( #18173 )
2023-05-14 14:38:14 +03:00
Felipe Pena
d4072bfc22
cgen: fix option with multi return assign ( #18174 )
2023-05-14 13:50:04 +03:00
yuyi
814d6823b4
checker: check generic undefined operation ( fix #18162 ) ( #18166 )
2023-05-13 06:54:08 +03:00
Felipe Pena
47761a42e9
all: attr for enum fields (+ json encode/decode) ( #18163 )
2023-05-13 01:08:30 +02:00
yuyi
8482bc4626
ast, parser: fix generic fntype to concrete types with later generic fn definition ( fix #18156 ) ( #18157 )
2023-05-12 15:52:41 +03:00
yuyi
2351856fc3
checker: clean up in struct_init() ( #18154 )
2023-05-12 09:34:55 +03:00
Turiiya
67e3061ea1
net: fix typos ( #18164 )
2023-05-12 09:31:27 +03:00
acimnotes
790afbce94
time: add new method year_day and the tests for it ( #18107 )
2023-05-12 09:27:20 +03:00
Swastik Baranwal
447b45ca8c
checker: disallow non-ptr elem in init ptr array ( #18161 )
2023-05-12 08:56:22 +03:00
Swastik Baranwal
d8cf65df1a
checker: only allow &u8
with byteptr
and itself ( #18146 )
2023-05-11 18:28:49 +10:00
yuyi
a87f2d9d11
checker: fix generic struct init with generic struct items ( #18152 )
2023-05-10 19:06:34 +03:00
yuyi
492a93ecd9
vweb: make controllers of struct Controller public ( #18153 )
2023-05-10 18:31:43 +03:00
Felipe Pena
d62c4c9fc1
checker: add missing check for global var on assignment to shared var ( #18125 )
2023-05-10 18:30:57 +03:00
Mark aka walkingdevel
61a5fbea35
autofree: fix cross var assigns with strings ( #18147 )
2023-05-10 00:06:31 +02:00
Felipe Pena
0be74aa613
cgen: fix option ptr default struct initialization ( #18141 )
2023-05-09 21:40:51 +03:00
yuyi
9aa5e3fe4b
cgen: clean up in index_of_map() ( #18145 )
2023-05-09 21:12:29 +03:00
yuyi
89f3288fb0
cgen: fix nested map of fn call ( #18142 )
2023-05-09 16:19:25 +03:00
Turiiya
e2e6c9660c
net.html: add &Tag
get_tag methods to find first occurrence ( #18139 )
2023-05-09 00:22:52 +03:00
Felipe Pena
1e56a69c02
checker, parser: save shared/atomic specifier for ast.Param ( #18124 )
2023-05-09 00:22:22 +03:00
Mark aka walkingdevel
6ac09e605e
orm: allow structs without the id field, more flexible primary keys ( #18140 )
2023-05-09 00:21:42 +03:00
yuyi
72b2f22057
cgen: fix generics array of threads with multiple types ( #18137 )
2023-05-08 13:24:28 +03:00
yuyi
87623b367c
parser: clean up parse_ident() ( #18138 )
2023-05-08 13:19:03 +03:00
l-m
3a06b55388
wasm: add basic debuginfo through name
section ( #18130 )
2023-05-08 09:31:36 +03:00
Swastik Baranwal
5bdf94a7bc
checker: disallow mut for blank idents ( #18114 )
2023-05-08 01:26:36 +02:00
yuyi
a0a8b7e47a
ast, parser, checker, cgen, fmt: implement generic fn params ( fix #14937 ) ( #18126 )
2023-05-07 19:53:56 +02:00
Turiiya
39ec1134fa
net.html: fix parsing of nested quoted strings in code tags ( #18123 )
2023-05-07 03:55:02 +03:00
Felipe Pena
1c3af091f7
cgen, json: fix option ptr declaration and dumping ( #18119 )
2023-05-07 03:54:43 +03:00
Jacques Supcik
a82fc5bea0
os: make SignalHandler public ( #18115 )
2023-05-06 14:59:06 +03:00
squidink7
787d774523
checker: warn instead of error, for unnecessary brackets on if/match ( #18117 )
2023-05-06 14:17:45 +03:00
Swastik Baranwal
5bcc04e66a
checker: disallow _ = <- quit
( #18104 )
2023-05-04 21:23:34 +03:00
Ikko Eltociear Ashimine
43093311b6
flag: fix typo in flag.v ( #18109 )
2023-05-04 21:23:02 +03:00
Felipe Pena
5008515b03
builtin: heap memory usage api ( #18103 )
2023-05-03 20:33:52 +03:00
Mark aka walkingdevel
40a97aed1a
docs, orm: update examples ( #18106 )
2023-05-03 20:33:16 +03:00
Felipe Pena
2c123dffbb
cgen: fix comptimeselector option propagation ( #18092 )
2023-05-03 08:31:48 +03:00
Mark aka walkingdevel
458132b1b2
checker: make undefined ident
error for closures more friendly ( #18100 )
2023-05-03 08:02:59 +03:00
Thomas Peißl
353de60158
examples: fix unset reader notice for the smtp/mail example ( #17998 )
2023-05-02 22:54:57 +03:00
Casper Kuethe
d3dbd7b743
vweb: add docs for [vweb_global] and shared attributes. ( #18098 )
2023-05-02 22:49:55 +03:00
Felipe Pena
063dfa0ab9
checker: missing mutability check for array.delete calls ( #18096 )
2023-05-02 22:48:40 +03:00
Delyan Angelov
5631e2f01d
ci,cgen,orm: fix CI failures after 9f118ba
2023-05-02 21:29:58 +03:00
Alexander Medvednikov
9f118ba3f1
orm: skip via the "-" attribute
2023-05-02 17:00:54 +02:00
Alexander Medvednikov
b9f5cc830b
json: skip via the "-" attribute
2023-05-02 16:41:32 +02:00
Felipe Pena
638f0f69ed
checker: fix wrong error message about missing shared
on parameter signature ( fix #18087 ) ( #18091 )
2023-05-02 15:52:40 +03:00
Swastik Baranwal
c4cce3bc00
checker: disallow matching type with primitive vars ( #18084 )
2023-05-02 11:40:38 +03:00
Mark aka walkingdevel
ca2820da5f
checker, orm: don't insert an uninitialized struct in the related table. ( #18093 )
2023-05-02 11:14:42 +03:00
Alexander Medvednikov
046dd5481c
V 0.3.4
2023-05-01 00:58:10 +03:00
Casper Kuethe
0898f57995
net.html: fix text parsing for inline tags ( #18085 )
2023-04-30 16:20:24 +03:00
Felipe Pena
d086cc26cd
cgen: fix it variable casting on map call when arr is a comptime variable #18083
2023-04-30 16:18:44 +03:00
Felipe Pena
e738d671a5
checker: fix [noinit] attr checking with multiple attr ( #18079 )
2023-04-29 17:07:24 +03:00
Mark aka walkingdevel
e8df5a7861
checker: check db
type implements orm.Connection
and isn't an Option
. ( #18078 )
2023-04-29 10:36:21 +02:00
Mark aka walkingdevel
9eee131423
checker: make type_implements() return false if methods of interface didn't implement ( #18076 )
2023-04-28 22:18:23 +03:00
Felipe Pena
2f48288a25
checker: fix generic argument resolution for multiple generic args ( #18073 )
2023-04-28 17:06:28 +03:00
Felipe Pena
b6bbd2463c
cgen: fix shared struct field initialization with default value ( #18075 )
2023-04-28 16:59:18 +03:00
Hitalo Souza
b0589c645d
json2: encode reference fields too ( #17058 )
2023-04-28 16:24:27 +03:00
Spydr
433208ea7e
native: make code generation logic platform-independant ( #18057 )
2023-04-28 16:00:23 +03:00
Turiiya
27e1c20e3d
toml: fix multiline array bool scanner, add test ( #18068 )
2023-04-28 01:30:47 +03:00
Mark aka walkingdevel
b767c7d6f5
cgen: orm: refactor, comments, simplify ( #18070 )
...
* cgen: refactor, comments, simplify
* fix: misc-tooling
2023-04-28 01:30:23 +03:00
Swastik Baranwal
30ac2e8763
checker: disallow assigning anon struct
to typed struct
( #18017 )
2023-04-27 16:54:26 +02:00
Felipe Pena
9fb52c4c9c
cgen: fix code generated for or-block for void result return function + code generated for indirection comptime checking for logical operators ( #18066 )
2023-04-27 17:37:29 +03:00
Felipe Pena
ee9cfb6df4
checker: add check for mixing multi-return results with other types in return statements ( fix #17501 ) ( #18067 )
2023-04-27 16:50:09 +03:00
Turiiya
bbfa25a17b
toml: fix scanner floating point detection ( #18062 )
2023-04-27 06:43:00 +03:00
Turiiya
8f767c9189
toml: update returns from option to result type ( #18065 )
2023-04-27 06:41:40 +03:00
Felipe Pena
c63902baf0
checker, cgen: fix generic resolution for comptimeselector and indirection checking on generic funcs ( #18043 )
2023-04-26 22:49:50 +03:00
yuyi
f4b7f83121
parser, checker: fix generic struct init with field struct init ( #18052 )
2023-04-26 22:22:15 +03:00
Felipe Pena
13b4cd9d58
os: fix memleak from getline on Linux ( #18022 )
2023-04-26 22:02:09 +03:00
yuyi
e1e5076d94
cgen: fix cross assign with generic fn call ( #18050 )
2023-04-26 20:41:20 +03:00
Felipe Pena
28f85371b1
cgen: fix comptime ptr comparison generated code ( #18048 )
2023-04-26 20:40:28 +03:00
squidink7
4bfe270c41
wasm: add support for [export]ed functions ( #18055 )
2023-04-26 20:39:58 +03:00
Jacques Supcik
c4b34c9482
docs: fix copy/paste leftover in the output of v help build-c
( #18056 )
2023-04-26 08:59:20 +03:00
Spydr
3622544695
native: implement miscellaneous features ( #18044 )
2023-04-25 01:19:15 +03:00
Swastik Baranwal
ac58eca015
checker: disallow deferencing a nil
pointer ( #18038 )
2023-04-25 01:10:01 +03:00
yuyi
f598bbde4e
tests: clean up c_struct_with_reserved_field_name_test.v ( #18026 )
2023-04-24 11:04:13 +02:00
yuyi
79819c4fcb
parser: check generic fntype declaration without type name ( #18033 )
2023-04-24 11:03:29 +02:00
Spydr
7ac7020192
native, markused: implement -skip-unused
( #18036 )
2023-04-24 10:41:12 +02:00
yuyi
d8167b8966
ast, parser: fix generic fntype to concrete types ( fix #17982 ) ( #18025 )
2023-04-23 03:44:16 +03:00
Mark aka walkingdevel
3fb32a866c
all: like
operator/keyword for V ORM ( #18020 )
2023-04-23 03:40:54 +03:00
Casper Kuethe
5f870f41b5
vweb: implement database pool ( #18010 )
2023-04-23 03:37:15 +03:00
Felipe Pena
6f85384f7f
checker, cgen: fix infering type for comptimeselector when using ptr type ( #18005 )
2023-04-22 11:04:08 +03:00
Felipe Pena
3d50663bcf
json: fix omitempty for alias, struct, sumtype, array and map ( #18012 )
2023-04-22 10:58:21 +03:00
Felipe Pena
89b7bebc3c
json: fix option sumtype with int types ( #18013 )
2023-04-22 10:58:01 +03:00
Felipe Pena
c43ea09d87
json: fix -cstrict build + optional map ( #18014 )
2023-04-22 10:55:25 +03:00
Felipe Pena
c339ea2ce2
checker, cgen: make comptime field.indirections working with logical operators ( #17990 )
2023-04-21 19:43:47 +03:00
Felipe Pena
59d91e0514
cgen: fix auto_str for fn type ( #17988 )
2023-04-21 19:42:45 +03:00
yuyi
95d1beb008
cgen: fix c struct with reserved field name ( fix #17993 ) ( #17996 )
2023-04-21 19:41:13 +03:00
Felipe Pena
488e14bf99
json: allow decode/encode of alias to primitive type ( #18003 )
2023-04-21 19:39:40 +03:00
Swastik Baranwal
456968b07d
checker: disallow []array{}
( #17994 )
2023-04-21 19:33:23 +03:00
yuyi
eb410bf283
checker: minor cleanup in return_stmt() ( #17995 )
2023-04-21 19:32:59 +03:00
Felipe Pena
adcd16b198
cgen: fix generic return for option ptr ( #17987 )
2023-04-18 17:51:43 +02:00
Felipe Pena
377c2e25ff
all: allow recursive struct with option ptr (?&Node) ( #17682 )
2023-04-18 13:07:21 +02:00
yuyi
6cc420880f
ast, checker, cgen: fix generic array of threads ( fix #17976 ) ( #17986 )
2023-04-18 12:43:30 +03:00
Felipe Pena
df3ee9a64a
cgen: fix concat with matchexpr + option string ( #17985 )
2023-04-18 12:40:37 +03:00
Felipe Pena
8445642567
cli: fix a panic and an infinite loop, when command flag descriptions have multiple lines ( #17981 )
2023-04-18 12:37:26 +03:00
Turiiya
a84fddbb91
toml: fix trailing comma in inline toml, add test ( #17977 )
2023-04-18 12:35:55 +03:00
Mehmet Ali Şipi
04dabb5485
v.builder: add support for cross-compilation from termux
to other platforms ( #17984 )
2023-04-18 09:20:17 +03:00
Delyan Angelov
8275dc5a73
db.pg: add support for -d trace_pg_error
2023-04-17 21:49:05 +03:00
Felipe Pena
3b2e58eace
checker: fix missing check for or-block on selectorexpr ( #17975 )
2023-04-17 16:11:34 +02:00
yuyi
fe4ccbc4cf
cgen: fix strings builder shift array.reverse() ( #17979 )
2023-04-17 14:06:57 +03:00
Delyan Angelov
4a22d4a65d
checker: fix v -shared vlib/json
on windows
2023-04-17 09:12:05 +03:00
Delyan Angelov
bf749b3559
ci: add test jobs for the wasm
module, for macos, linux and windows ( #17972 )
2023-04-16 14:52:00 +03:00
Felipe Pena
a49cecc2b4
cgen: fix array map with it
selector expr, used as an it
method closure ( #17968 )
2023-04-16 14:41:07 +03:00
Felipe Pena
8e959ae5b5
parser: fix wrong nodes generated for $something ( #17969 )
2023-04-16 14:36:51 +03:00
Turiiya
6e0204a614
regex: remove outdated examples in README.md ( #17971 )
2023-04-16 13:17:24 +03:00
yuyi
6db904fb8f
cgen: correct comments and cleanup in comptime_for() ( #17964 )
2023-04-16 08:01:36 +03:00
Swastik Baranwal
d3de7adcc0
builtin: add C.scanf
fn decl to cfns.c.v
( #17965 )
2023-04-16 08:00:19 +03:00
Delyan Angelov
75ddcb02fc
tests: fix warnings and failure on macos for closure_generator_test.v
2023-04-16 07:45:05 +03:00
yuyi
a938dcddb5
ast: minor cleanup in ast.v ( #17962 )
2023-04-15 14:29:15 +03:00
yuyi
7c9f273e33
parser: fix comptime_for in repl (script mode) ( fix #5976 ) ( #17963 )
2023-04-15 14:28:01 +03:00
James Hegedus
2179db37ee
flag: fix typo in uknown flag struct ( #17375 )
2023-04-14 14:42:11 +03:00
SolarWolf-Code
7981d2854a
net: fix typo give => given ( #17955 )
2023-04-14 11:15:16 +03:00
Delyan Angelov
e0656ad1b1
term.ui: cleanup of meaningless comment
2023-04-14 11:13:50 +03:00
Alexander Medvednikov
9f5e2aeea9
backtrace: use unsafe { nil }
2023-04-14 08:28:22 +02:00
yuyi
c59a5bbf05
parser: clean up array_init() ( #17947 )
2023-04-14 07:36:57 +02:00
Casper Kuethe
76fd55a693
vweb: fix multipart_form parsing ( #17953 )
2023-04-14 07:07:48 +02:00
l-m
8b2887d80b
wasm module: globals, constant expressions and function reference types ( #17950 )
2023-04-13 19:39:55 +02:00
Delyan Angelov
c6947fde57
os: implement Process.set_work_folder/0 to set the initial working folder of the new child process ( #17946 )
2023-04-13 14:48:32 +03:00
Turiiya
489ac892b9
regex: fix formatting inconsistencies in README.md ( #17940 )
2023-04-13 14:44:45 +03:00
Felipe Pena
524f7c3ead
json: fix json with option struct ( #17942 )
2023-04-13 08:17:40 +02:00
Swastik Baranwal
3d99f1f2c2
checker: disallow struct int to ptr outside unsafe ( #17923 )
2023-04-13 07:38:21 +02:00
yuyi
92cb7468ce
ast: minor optimization of clear_flags() ( #17938 )
2023-04-13 07:27:26 +02:00
yuyi
87ca877c83
parser: correct comments in comptime_for() ( #17944 )
2023-04-13 07:26:43 +02:00
Casper Kuethe
838083e610
vweb: add an overridable .not_found() method, for making a custom 404 page + tests fixes ( #17936 )
2023-04-12 00:50:03 +03:00
lapingenieur
f9c186a400
builtin: correct a small documentation mistake ( #17935 )
2023-04-11 12:37:14 +02:00
yuyi
8b37694760
cgen: fix generic method on embed struct ( fix #17929 ) ( #17932 )
2023-04-11 10:04:00 +03:00
Hitalo Souza
91874f3244
json2: encode array ( #17926 )
2023-04-10 19:54:43 +03:00
Felipe Pena
319ad5bae2
json: fix json.decode with map alias ( #17925 )
2023-04-10 19:50:35 +03:00
Hitalo Souza
4d4d76d65b
json2: fix encoding of nested maps like map[string]map[string]int ( #17924 )
2023-04-10 18:57:02 +03:00
yuyi
4e498b4303
cgen: fix printing array of recursive reference struct ( fix #17858 ) ( #17922 )
2023-04-10 17:09:27 +03:00
Felipe Pena
6a60db8768
cgen, checker: fix generic/comptime parameter concrete type resolution in some cases ( #17762 )
2023-04-10 10:42:49 +03:00
Felipe Pena
063f4023c5
checker: allow mut var.$(field.name)
( #17911 )
2023-04-10 10:37:02 +03:00
Felipe Pena
5c439b6621
cgen: fix auto_str for option values ( #17910 )
2023-04-10 05:56:57 +02:00
Alexander Medvednikov
83afa1009e
checker: fix immutable deref check
2023-04-10 04:59:36 +02:00
Swastik Baranwal
6acf01a4a0
checker: disallow more reserved types to be used as variable names ( #17917 )
2023-04-09 13:42:21 +02:00
Surman The Dead
b772731b98
leb128: make decoding return the number of decoded bytes, in addition to the decoded value ( #17912 )
2023-04-09 10:32:49 +03:00
Delyan Angelov
abe0ad886b
ci: workaround flakyness of array_test.v on windows, with the default GC mode
2023-04-09 09:48:15 +03:00