Felipe Pena
598673314b
json.decode: add check for shared variable ( #18237 )
2023-05-24 06:47:09 +03:00
yuyi
6698fe4f60
checker, cgen: fix contains() with array of interfaces ( #18241 )
2023-05-23 14:46:14 +02:00
Felipe Pena
37618c9465
cgen, checker: fix comptime assigning to sumtype or indexexpr ( #18240 )
2023-05-23 14:42:53 +02:00
yuyi
e2f18fc9cc
checker, cgen: fix array of interfaces index() ( #18232 )
2023-05-22 16:31:22 +03:00
Alexander Medvednikov
a33ffcedfb
parser: remove attributes from anonymous structs ( fixes #18233 )
2023-05-22 14:13:34 +02:00
Delyan Angelov
c382f4d310
rand: add missing rand.u16(), update doc comments, add test
2023-05-22 13:20:52 +03:00
Turiiya
1be798be49
net.html: remove unnecessary comment ( #18230 )
2023-05-22 07:46:26 +03:00
kbkpbot
a10690b934
net.conv: use a pure v implementation instead of C.hton etc ( #18226 )
2023-05-22 06:59:33 +03:00
Mark aka walkingdevel
ce0591da8d
mysql: allocate memory for each string and blob dynamically depending on its value length ( #18214 )
2023-05-21 15:24:43 +02:00
sandbankdisperser
f833188234
vweb: return 404 on file not found ( #18219 )
2023-05-21 15:23:43 +02:00
xiusin
e4c769d072
net.http: add remote-addr header ( #18208 )
2023-05-21 15:23:24 +02:00
Felipe Pena
38a155ac81
cgen: make comptime call works with or-block ( #18215 )
2023-05-21 15:22:40 +02:00
Swastik Baranwal
4b22ea7803
parser: disallow all array
usage outside of builtin ( #18222 )
2023-05-21 15:21:57 +02:00
Ikko Eltociear Ashimine
abcbba1e81
builtin: fix typo in string.js.v ( #18213 )
2023-05-21 02:46:11 +03:00
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