phoebe
2fb561ba7f
checker, cgen: allow comptime ident is array of types ( #18765 )
2023-07-04 06:45:30 +03:00
phoebe
1db67f7505
checker: allow no return in compile_error else block ( #18758 )
2023-07-04 06:44:24 +03:00
Delyan Angelov
9bf2449a7b
cgen: fix memleak for [][]T{len: x}, or []Struct{len: x} ( #18763 )
2023-07-04 06:32:19 +03:00
Felipe Pena
3f5995ace8
cgen: fix regression with unalised naming conflict with C interop ( #18752 )
2023-07-03 23:12:20 +03:00
yuyi
c1550b3efa
ast, checker: change stmt(node_ ast.Stmt) to stmt(mut node ast.Stmt) ( #18756 )
2023-07-03 23:10:00 +03:00
Swastik Baranwal
ab258aebfb
checker: disallow invalid prefix on left side of assign stmt ( #18750 )
2023-07-03 18:54:23 +03:00
yuyi
df3c85eb36
checker: use autocasting in complex if conditions ( #18753 )
2023-07-03 11:03:05 +03:00
Mark aka walkingdevel
c48ae86132
cgen: fix autofree inserting string declarations for multiple functions calls ( #18723 )
2023-07-03 08:01:55 +03:00
phoebe
e01d973c27
checker: fix comptime "ident is type" ( #18747 )
2023-07-03 08:01:34 +03:00
yuyi
ad1d5e7adb
cgen: remove 'mut mut_table := unsafe { &ast.Table(g.table) }' ( #18742 )
2023-07-02 23:54:44 +03:00
yuyi
fd6983fcb4
checker: fix autocast in complex if condtions 4 ( #18744 )
2023-07-02 23:54:17 +03:00
Ikko Eltociear Ashimine
c75382ad23
term: fix typo in term_windows.c.v ( #18745 )
2023-07-02 23:53:56 +03:00
Herman
af38f8b3ba
channels: refactor the channel_select function ( #18711 )
2023-07-02 15:45:30 +03:00
Felipe Pena
329e063752
checker: fix wrong interface parameter resolution for anonymous fn ( #18724 )
2023-07-02 14:18:53 +03:00
Spydr
f3942417c4
native, builder: enable processing of .v files in the builtin
module (for now most functions there are blacklisted) ( #18735 )
2023-07-02 14:16:15 +03:00
Swastik Baranwal
0ce3e46823
checker: disallow assigning nil
to struct fields ( #18725 )
2023-07-02 14:04:28 +03:00
yuyi
44a6741bc3
ast, checker: change check(ast.file &ast.File) to check(mut ast.file ast.File) ( #18729 )
2023-07-02 09:41:04 +03:00
Turiiya
a27f2ddcc3
term.ui, vweb, v: update deprecated functions ( #18726 )
2023-07-02 09:38:33 +03:00
yuyi
5d4c2cd832
v: use autocasting in complex conditions ( #18731 )
2023-07-02 09:23:15 +03:00
Felipe Pena
29c8aaeb89
cgen: fix selector code to use interface method table on closure when needed ( #18736 )
2023-07-02 06:54:52 +03:00
Alexander Medvednikov
e407579e99
V 0.4
2023-07-01 13:50:33 +03:00
yuyi
049fa3c70f
cgen: minor cleanup in ref_or_deref_arg() ( #18713 )
2023-07-01 12:07:53 +03:00
yuyi
36577eed09
checker: fix autocast in complex if conditions 3 ( #18715 )
2023-07-01 12:07:17 +03:00
Isaiah
20c6d87fd4
fmt: fix formatting of imported static methods ( #18720 )
2023-07-01 12:04:52 +03:00
Spydr
ee429bb51d
native: increase support for ast.Alias
and ast.TypeOf
( #18722 )
2023-07-01 11:39:39 +03:00
Alexander Medvednikov
015ccc2a7f
V 0.3.5
2023-06-29 22:16:34 +03:00
Subhomoy Haldar
7ab11097be
rand: fix edge case, when bit length is 31 and 63, add tests for rand.intn(2147483647)!
etc ( #18714 )
2023-06-29 22:11:27 +03:00
Alexander Medvednikov
cf323cd0ef
Revert "checker: fix autocast in complex if conditions 3 ( #18710 )"
...
This reverts commit e74723c1e7
.
2023-06-29 21:37:11 +03:00
Turiiya
357a4a00bf
checker: fix generic infix expr type mismatch error ( #18706 )
2023-06-29 21:32:21 +03:00
yuyi
e74723c1e7
checker: fix autocast in complex if conditions 3 ( #18710 )
2023-06-29 21:31:40 +03:00
Spydr
c4ba47a131
native: inital support for aliased types ( #18703 )
2023-06-29 21:30:48 +03:00
yuyi
f122703a43
v: use autocasting in if conditions inside the compiler ( #18708 )
2023-06-29 19:37:36 +03:00
Alexander Medvednikov
85160923b6
changelog: 0.3.5 (p. 1)
2023-06-29 19:28:38 +03:00
yuyi
60f9f53e36
checker: fix autocast in complex if condtions 2 ( #18702 )
2023-06-29 07:01:21 +03:00
Mark aka walkingdevel
7ee25843c2
db.mysql: fix the support for TIMESTAMP columns ( #18704 )
2023-06-29 06:49:58 +03:00
Daniel Daudysh
f0fb86f76e
checker,orm: skip compile-time error msg for fields tagged with [skip]
and [sql: '-']
( #18700 )
2023-06-29 06:43:24 +03:00
Swastik Baranwal
499d0526fc
checker,orm: add compile error for unsupported field data types like field []int
etc ( #18537 )
2023-06-28 13:40:36 +03:00
yuyi
2b2aca6eb7
checker: fix autocast in complex if condtions ( #18699 )
2023-06-28 13:37:20 +03:00
phoebe
735654296c
math.big: refactor big_test.v for scalability ( #18696 )
2023-06-28 13:35:13 +03:00
Felipe Pena
89c56fb5ee
parser, checker: fix static method naming and generic call ( #18694 )
2023-06-28 07:07:07 +03:00
Felipe Pena
83ee2827d4
cgen: fix alias to struct ptr on structinit ( #18571 )
2023-06-28 07:02:32 +03:00
Turiiya
b2ca3ac089
net.html: fix semantic inconsistencies of tag retrieving functions ( #18558 )
2023-06-27 20:10:31 +03:00
phoebe
1bae9e4538
math.big: minor gcd improvements/fixups and internal rsh_to_set_bit ( #18569 )
2023-06-27 20:09:22 +03:00
yuyi
8508c552d2
checker: implement autocast in if conditions ( #18573 )
2023-06-27 20:08:50 +03:00
Swastik Baranwal
e48b55fc80
checker: disallow Result
type aliases ( #18693 )
2023-06-27 20:08:37 +03:00
Hitalo Souza
aeebb4f118
json2: small refactor ( #16913 )
2023-06-27 20:07:44 +03:00
Felipe Pena
d523bb0306
checker: fix missing check for taking address of literal value member ( #18570 )
2023-06-27 10:54:03 +03:00
yuyi
3558e05bfb
tests: fix reflection_sym_test.v ( #18574 )
2023-06-27 10:53:35 +03:00
Alexander Medvednikov
02c382569c
gen.golang: fix anon fn
2023-06-27 02:17:09 +03:00
Alexander Medvednikov
21ccb9b48e
doc: clarify new static type methods a bit
2023-06-27 01:38:31 +03:00
Alexander Medvednikov
d52bac8ee9
doc: document new static type methods
2023-06-27 01:31:56 +03:00
Casper Kuethe
21d9730cde
context, vweb: add ability to set and get values on vweb.Context ( #18564 )
2023-06-27 01:25:45 +03:00
Eliyaan (Nopana)
7a9c885b31
native: replace abs() with mathutils.abs() ( #18568 )
2023-06-27 01:25:12 +03:00
yuyi
a67342d05b
checker: minor cleanup in infix_expr() ( #18567 )
2023-06-27 01:24:46 +03:00
Alexander Medvednikov
a9f8b5dadc
all: static type methods
2023-06-27 01:23:30 +03:00
Delyan Angelov
ec35d76574
cgen: cleanup return comments in generated code after dbd2517
(-32KB for v.c)
2023-06-25 09:51:32 +03:00
Felipe Pena
1ee83bf639
checker: disallow using Result !Type
as a map[Key]!Type
( #18543 )
2023-06-25 09:51:10 +03:00
Spydr
31f68eea94
native: split codegen into multiple files and refactor assign statement generation ( #18546 )
2023-06-25 09:47:10 +03:00
Felipe Pena
e9960339f9
cgen: fix generic resolver on non generic function ( #18381 )
2023-06-25 09:07:14 +03:00
yuyi
84a5fd0051
cgen: minor cleanup for ast.clear_flags() ( #18549 )
2023-06-25 09:01:36 +03:00
Felipe Pena
34ac3269bc
cgen: fix initialising a map, using option type as value ( #18540 )
2023-06-25 01:55:42 +03:00
Felipe Pena
752e4c2e47
cgen, checker: allow a << none
, where a
is []?&int
( #18539 )
2023-06-24 20:54:49 +03:00
yuyi
11fa28edff
flag: fix finalize with multiple shortargs ( #18544 )
2023-06-24 20:35:44 +03:00
yuyi
3e3b289583
checker: check shared parameter assigning ( fix #18525 ) ( #18534 )
2023-06-24 14:18:11 +03:00
kbkpbot
5f0ad64155
runtime: add new functions total_memory/0 and free_memory/0 ( #18499 )
2023-06-24 14:15:15 +03:00
Felipe Pena
2abd2e2c2a
cgen, checker: fix indexexpr with sumtype of array types ( #18515 )
2023-06-24 09:09:49 +03:00
Delyan Angelov
4c9c515f8b
parser: remove hardcoded check for function calls for C.stat
, C.sigaction
, etc ( #18535 )
2023-06-24 08:03:12 +03:00
Delyan Angelov
2c7643661e
time: small cleanup of parse_iso8601 comments, make the C.strftime declaratione forwards compatible
2023-06-24 08:01:57 +03:00
yuyi
f3e1859ee8
parser: fix multiple embedded external module interface ( #18531 )
2023-06-23 21:23:24 +03:00
Felipe Pena
9d77fd90bf
checker: fix missing check for diff type on map value declaration ( #18522 )
2023-06-22 22:48:15 +03:00
yuyi
68ba39084d
checker: check struct field init with result value ( fix #18511 ) ( #18514 )
2023-06-22 22:40:11 +03:00
Swastik Baranwal
0b2e947e0c
parser: disallow multi else
branches in match ( #18526 )
2023-06-22 22:39:35 +03:00
Delyan Angelov
0e4eea80ca
cgen: fix code generation for generic unions ( #18513 )
2023-06-22 22:39:05 +03:00
Casper Kuethe
a12e82aa15
stbi: allow customisation of number of channels in stbi.load ( #18491 )
2023-06-22 16:47:52 +03:00
yuyi
22bd1b9d55
ast: clean up ast.StructInit ( #18518 )
2023-06-22 16:41:08 +03:00
Turiiya
af4e113f6c
vweb: use <head>
instead of <header>
in the html templates ( #18516 )
2023-06-22 11:11:02 +03:00
Joe Koop
8b25c4c9a3
net.http: copy IANA's list of methods to the http.Method enum ( #18508 )
2023-06-22 09:31:34 +03:00
yuyi
76ae9dba5c
checker: check struct init with pointer field ( fix #18485 ) ( #18501 )
2023-06-21 12:36:28 +03:00
squidink7
5006ffb304
time, x.json2: improve iso8601 time decoding ( #18496 )
2023-06-21 12:34:50 +03:00
yuyi
d7a50b4a22
builtin: minor cleanup in sorted_map.v ( #18502 )
2023-06-21 12:34:05 +03:00
Turiiya
867f4376d8
checker: abstract repetitive error handling ( #18507 )
2023-06-21 12:13:18 +03:00
yuyi
b61fdfa094
checker, cgen: fix generic method variable ( #18509 )
2023-06-21 12:09:53 +03:00
phoebe
4485f1ca1e
math.big: fix documentation for mod_inverse ( #18494 )
2023-06-20 14:31:04 +03:00
Felipe Pena
c657384f72
cgen: fix alias to option handling ( #18490 )
2023-06-20 11:55:25 +03:00
Turiiya
a7f00e7594
checker: add hint to sumtype cannot hold reference types error ( #18486 )
2023-06-20 11:54:57 +03:00
Felipe Pena
0232f074a8
cgen: fix alias eq method + map init with option ( #18483 )
2023-06-20 11:52:59 +03:00
l-m
15cb343065
picoev: support for freebsd ( #18492 )
2023-06-20 09:04:07 +03:00
Turiiya
958e456790
parser: fix match for array of reference sumtype ( #18487 )
2023-06-19 18:40:17 +03:00
yuyi
7c1ace02f3
checker: fix a bug checking generic closures ( #18489 )
2023-06-19 18:22:25 +03:00
Casper Kuethe
2bedb6ffd7
stbi: add a resize_uint8 function for resizing images in memory ( #18484 )
2023-06-19 18:14:26 +03:00
phoebe
a3f24caffc
math.big: add mod_inverse and improve big_mod_pow to allow for large exponents and moduli ( #18461 )
2023-06-19 17:59:49 +03:00
Turiiya
396d46d9ca
ast, builder, checker, parser: fix typos ( #18480 )
2023-06-18 22:36:17 +03:00
Turiiya
0454f43fa3
checker: fix error assigning generic function variable with generic struct return ( #18472 )
2023-06-18 22:22:22 +03:00
Delyan Angelov
017cc6738b
checker: add a hard to reach limit of 1_000_000 iterations for resolving all generics (usually <10 are enough) ( #18477 )
2023-06-17 22:29:36 +03:00
Turiiya
9c5aeb62b2
checker: disallow import names and import aliases, shadowing the module name ( #18431 )
2023-06-17 16:39:10 +03:00
yuyi
acfe785597
all: clean up with is_any_kind_of_pointer() ( #18467 )
2023-06-17 14:10:06 +03:00
Louis Schmieder
dbd251793e
all: add $res compile time function to get returned value in defer block ( #18382 )
2023-06-17 14:08:50 +03:00
yuyi
ac32d2a803
checker, cgen: fix if/match expr with continue
or break
in a branch ( #18466 )
2023-06-16 12:06:00 +03:00
Felipe Pena
d17f6f69cd
checker: fix missing check for unwrapped shift operation ( #18451 )
2023-06-16 09:49:24 +03:00
Felipe Pena
84cf448f2f
checker: fix enum max value validation ( #18446 )
2023-06-16 09:48:47 +03:00
yuyi
05f2798c88
ast: remove redundant method is_real_pointer() ( #18453 )
2023-06-16 09:48:24 +03:00
yuyi
073a651f7f
cgen: fix fn voidptr param calling with nonpointer rvalue ( fix #18424 ) ( #18462 )
2023-06-16 09:48:12 +03:00
yuyi
1623cc3a51
fmt: fix functions with short arguments ( fix #18398 ) ( #18459 )
2023-06-16 09:47:40 +03:00
Felipe Pena
ccb70b1292
checker: fix missing unwrap check for option to non-option argument ( #18460 )
2023-06-16 09:46:33 +03:00
Turiiya
5d0af69bfd
parser: fix dump removing empty lines ( #18452 )
2023-06-16 09:45:50 +03:00
Ethan Hansen
5001b17336
docs: add docstring for map.move() ( #18430 )
2023-06-16 09:45:16 +03:00
Felipe Pena
06583be9ec
cgen: fix fixed array of chan ( #18438 )
2023-06-16 09:44:53 +03:00
Turiiya
34163ae44b
checker: extend check assigning mut reference to immutable var in nested parens ( #18442 )
2023-06-15 02:07:25 +03:00
Turiiya
77a1f5928f
checker: include import aliases when checking for import duplicates ( #18450 )
2023-06-15 02:06:44 +03:00
yuyi
27b3303eeb
ast: clean up is_float()/is_float_valptr() ( #18448 )
2023-06-15 02:06:08 +03:00
Turiiya
bbd1027a04
fmt: remove all unnecessary parenthesis at once, instead of one pair at a time ( #18441 )
2023-06-14 15:05:50 +03:00
Delyan Angelov
6806086bf1
builtin: zero out internal map/array pointers on m.free(), to reduce the work for the GC mark phase for non escaping maps/arrays, used in hot loops ( #18415 )
2023-06-14 15:00:36 +03:00
yuyi
3fb31b971d
checker: clean up method_call() ( #18443 )
2023-06-14 14:46:00 +03:00
Felipe Pena
23da2128d5
cgen: fix msvc packed attr ( #18437 )
2023-06-14 10:44:48 +03:00
yuyi
530f73b927
vlib/compress: correct comments in compress module ( #18434 )
2023-06-13 19:10:27 +03:00
Turiiya
2ca3046bf8
checker: disallow assigning mutable reference to immutable ParExpr ( #18420 )
2023-06-13 08:52:37 +03:00
Felipe Pena
ada702ec66
cgen: fix opt ptr argument passing with and without heap usage ( #18423 )
2023-06-13 08:51:42 +03:00
Alexander Medvednikov
24c09881f7
Revert "fmt: fix parens around reference module prefix expressions ( #18416 )"
...
This reverts commit 7f178d4662
.
2023-06-13 08:50:50 +03:00
yuyi
126fbe8e33
scanner: fix indent error for line comment generated by vdoc ( #18422 )
2023-06-13 08:50:02 +03:00
Mark aka walkingdevel
f634f7b01f
mysql: connection fixes ( #18428 )
2023-06-13 08:49:41 +03:00
Turiiya
7f178d4662
fmt: fix parens around reference module prefix expressions ( #18416 )
2023-06-12 13:35:44 +03:00
phoebe
37386697a3
math.big: fix internal subtract_align_last_byte_in_place overflow ( #18413 )
2023-06-12 13:33:53 +03:00
Felipe Pena
54eabcb242
cgen: make the default values for all enums, be their first listed entry, even if it was enum MyEnum { first = 999 second}
, not just the defaul 0
( #18388 )
2023-06-11 21:57:36 +03:00
Swastik Baranwal
fc6726b2b1
checker: no notice for interface
field initialized struct with ...other
syntax ( #18405 )
2023-06-11 20:03:20 +03:00
Felipe Pena
2e9c469158
checker: fix external enum value resolution, i.e. enum { enum_value = C.VALUE }
( #18401 )
2023-06-11 19:08:45 +03:00
Delyan Angelov
275b8a1294
cgen: fix stringification of usize struct fields (before, they were treated as 32 bit *signed* numbers) ( #18410 )
2023-06-11 17:31:18 +03:00
Felipe Pena
83e30a8104
checker, cgen: fix comptime method and field name checking ( #18402 )
2023-06-11 03:59:28 +03:00
Felipe Pena
af8df871d1
cgen: fix option ptr assignment ( #18394 )
2023-06-11 00:53:35 +03:00
yuyi
54cc59d3a5
arrays: minor comments corrections ( #18404 )
2023-06-11 00:52:23 +03:00
Felipe Pena
e27786235a
cgen: fix selector option casting ( #18395 )
2023-06-10 18:02:54 +03:00
Turiiya
c0843af4f7
fmt: refactor, fix typos ( #18392 )
2023-06-10 11:32:41 +03:00
Felipe Pena
3e5f2541f2
parser: fix comments parsing on map init ( #18389 )
2023-06-10 02:28:56 +03:00
yuyi
42db392e76
checker: fix embedded structure initialization warnings ( #18385 )
2023-06-09 17:44:15 +03:00
yuyi
dd1d5bca1b
ast: clean up ast.StructInit ( #18387 )
2023-06-09 17:43:21 +03:00
Felipe Pena
7a25c03aa7
cgen: simplify fixed arr return ( #18380 )
2023-06-09 14:34:32 +03:00
penguindark
1de6523da5
regex: bugfix for #18363 , [^\s]+ act different from \S+ ( #18371 )
2023-06-09 14:34:06 +03:00
yuyi
5300441c09
cgen: fix alias of map clone() ( fix #18384 ) ( #18386 )
2023-06-09 12:58:38 +03:00
yuyi
01b20485c3
parser: fix generic function variable ( #18373 )
2023-06-08 11:42:29 +03:00
Turiiya
bcd5c91bdc
fmt: fix blank line inserts between enum attribute comments ( #18361 )
2023-06-08 01:54:38 +03:00
l-m
6208b31d9f
picoev: non breaking refactor ( #18364 )
2023-06-08 01:54:15 +03:00
Mark aka walkingdevel
0810e84098
coroutines: add macOS amd64 support, panic on wget errors ( #18360 )
2023-06-07 02:00:49 +03:00
Turiiya
c06fd556e8
checker: add mutability check for comptime assignments ( #18354 )
2023-06-06 19:58:30 +03:00
Felipe Pena
125921db66
cgen: fix nested fixed array instantiation ( #18357 )
2023-06-06 19:57:40 +03:00
sandbankdisperser
e97aff8742
time: add more detailed error descriptions, add custom format parsing with time.parse_format ( #18257 )
2023-06-06 18:43:10 +03:00
Delyan Angelov
0bbbf1e801
v.util: make util.launch_tool/3 more robust, by recompiling V tools always in a known current working folder (vroot) ( #18358 )
2023-06-06 18:01:58 +03:00
yuyi
22c0cdc192
checker: fix infering generic array type in nested call ( fix #18317 ) ( #18350 )
2023-06-06 17:18:14 +03:00
yuyi
f45fc45407
ast, checker, fmt: fix compiler internal formatting failed ( #18356 )
2023-06-06 16:18:28 +03:00
kbkpbot
632c466aa0
sync: add Mutex.destroy and RwMutex.destroy methods ( #18351 )
2023-06-06 14:45:12 +03:00
Delyan Angelov
c1e302a38d
Revert "parser: add error for typeof(T), suggesting typeof[T]() instead"
...
This reverts commit 692624b47c
.
2023-06-06 12:03:55 +03:00
Delyan Angelov
692624b47c
parser: add error for typeof(T), suggesting typeof[T]() instead
2023-06-06 11:27:17 +03:00
Felipe Pena
d3c679bdcb
cgen: fix fixed array of map ( #18347 )
2023-06-05 16:46:48 +03:00
yuyi
254ed1766c
ast: minor cleanup in generic_insts_to_concrete() ( #18349 )
2023-06-05 16:46:23 +03:00
Felipe Pena
169627722a
cgen: circular reference limit to auto_str for interface ( #18340 )
2023-06-05 16:45:44 +03:00
Swastik Baranwal
48c256bf3b
checker: allow casted enum val
and const
as fixed array size ( #18321 )
2023-06-05 16:44:55 +03:00
Felipe Pena
5440657364
fmt: fix alias type stripped comments ( #18346 )
2023-06-05 01:53:17 +02:00
yuyi
325f64bc60
ast: fix for in
iterator with generic structs ( #18344 )
2023-06-04 18:15:15 +02:00
Ulises Jeremias Cornejo Fandos
02ea6028af
vlib: improvements to the context module ( #18318 )
2023-06-04 18:12:52 +02:00
yuyi
0e106c9062
checker: fix generic fn infering map argument ( #18341 )
2023-06-04 18:10:41 +02:00
Felipe Pena
8d2a0ffe37
cgen: fix option handling with auto heap variable ( #18336 )
2023-06-04 18:10:22 +02:00
Alexander Medvednikov
6fe6fe887d
coroutines: $if is_coroutine? {
2023-06-03 19:05:50 +02:00
Felipe Pena
4e21b2ab4e
parser: detect wrong usage of Option as concrete type ( #18334 )
2023-06-03 13:24:25 +02:00
kbkpbot
0fc33c6fa3
datatypes: add Bloom filter ( #18327 )
2023-06-02 10:56:22 +03:00
Lenni0451
9764342dbe
vweb: add support for host specific static files ( #18322 )
2023-06-02 10:55:59 +03:00
Felipe Pena
a8ea1f9d50
cgen, checker, parser: fix fixed array with channel ( #18315 )
2023-06-02 10:55:08 +03:00
yuyi
5e12d3483c
checker: fix generic fn with nested generic fn call ( fix #18285 ) ( #18314 )
2023-06-02 10:52:29 +03:00
yuyi
4dc338863c
checker: fix json decode with generic array of struct ( fix #18300 ) ( #18308 )
2023-05-30 14:25:33 +02:00
yuyi
ac6289301c
ast, cgen: fix generic struct with inconsistent generic types ( fix #18254 ) ( #18301 )
2023-05-30 14:24:54 +02:00
Turiiya
af05cfcbbc
toml, semver: minor optimization of conditions ( #18299 )
2023-05-30 14:24:27 +02:00
Felipe Pena
0b71cef78a
cgen: fix generic comptimeselector array resolution ( #18296 )
2023-05-30 14:23:37 +02:00
Felipe Pena
f430c0b67a
parser: fix for select parsing ( #18306 )
2023-05-30 14:22:47 +02:00
Casper Kuethe
4174048f96
vweb: add host option to controller ( #18303 )
2023-05-30 14:22:23 +02:00
Felipe Pena
05b832a317
cgen: fix none initialization to struct member ( #18295 )
2023-05-29 15:35:41 +03:00
Delyan Angelov
d47c722c1f
builtin: fix byte deprecation warnings for v test-all
(the -freestanding compilation)
2023-05-29 13:20:29 +03:00
Lenni0451
2904c399b5
vweb: host attribute ( #18288 )
2023-05-29 02:11:10 +02:00
Alexander Medvednikov
f22ba836fd
prealloc: use u8 instead of byte
2023-05-29 01:42:52 +02:00
Alexander Medvednikov
3f62487409
examples: add a simple coroutine example
2023-05-29 01:35:38 +02:00
Turiiya
1be539d20f
checker: add byte deprecation warning ( #18287 )
2023-05-28 23:30:32 +02:00
Alexander Medvednikov
3ac63cce86
fmt: fix a shared
test
2023-05-28 18:23:07 +03:00
Alexander Medvednikov
f8422738bb
vfmt: no longer replace go
with spawn
2023-05-28 16:03:39 +02:00
Alexander Medvednikov
786865d349
coroutines: init() that runs automatically
2023-05-28 15:54:57 +02:00
Turiiya
80d404c220
checker: replace as
cast with a safer type check is
(smart cast) ( #18286 )
2023-05-28 05:41:46 +02:00
Alexander Medvednikov
9db10c8f61
all: coroutines (part 2)
2023-05-28 05:30:23 +02:00
Alexander Medvednikov
2162230086
cgen: move spawn
and go
logic to a separate file
2023-05-28 02:52:38 +02:00
Alexander Medvednikov
50247d5093
gen.golang: handle spawn/go
2023-05-28 02:44:47 +02:00
Alexander Medvednikov
45f16a2640
all: coroutines (part 1)
2023-05-27 23:33:46 +02:00
Felipe Pena
5812579d53
checker: remove check for option being initialized ( #18280 )
2023-05-27 20:43:54 +02:00
Felipe Pena
16ef1d95fb
cgen: fix fixed array ret with anon fn ( #18279 )
2023-05-27 20:42:31 +02:00
Felipe Pena
6bfa6ec93c
cgen: fix comptime interpolation ( #18281 )
2023-05-27 20:41:40 +02:00
xiusin
43bc85d3bb
http: add workers to improve the server's concurrent capacity. ( #18271 )
2023-05-27 01:57:32 +03:00
Turiiya
f9efbdff10
semver: refactor, simplify, fix typo ( #18272 )
2023-05-27 01:57:02 +03:00
Turiiya
3e08487198
checker: disallow multiple return values in const declarations ( #18273 )
2023-05-27 01:55:14 +03:00
yuyi
6db62e43d3
parser: fix array method using it
in defer ( fix #18246 ) ( #18267 )
2023-05-26 02:29:52 +02:00
Casper Kuethe
79657a1a2f
vweb: update middleware docs ( #18270 )
2023-05-26 02:26:00 +02:00
Mark aka walkingdevel
b698a0f459
mysql: add the ability to commit transactions, some code improvements ( #18268 )
2023-05-26 02:16:02 +02:00
Felipe Pena
8a856cc36d
checker: adjust fix for struct anon assigning to typed struct ( #18264 )
2023-05-25 20:40:20 +03:00
Mark aka walkingdevel
c2fa45c24d
cgen, orm: fix typo, and wrap the fkey attribute into quotes in errors ( #18266 )
2023-05-25 17:27:25 +02:00
yuyi
caee3935a5
os: fix truncate() on windows ( #18262 )
2023-05-25 14:37:53 +03:00
Felipe Pena
bc88183318
cgen: fix struct fn ptr call ( #18260 )
2023-05-25 10:52:05 +03:00
Felipe Pena
dc16e50d55
regex: fix find() when using anchors (start / end) ( #18259 )
2023-05-25 10:51:41 +03:00
Felipe Pena
fc6a34355d
parser: fix missing sync auto import when only declaring shared type and not using it ( #18255 )
2023-05-25 02:54:04 +02:00
Felipe Pena
9d56432e55
checker: add missing check for mismatch anon struct to typed struct ( #18250 )
2023-05-25 02:53:14 +02:00
Felipe Pena
64a4a3316a
checker, cgen: fix fixed array return on assigning, arg pass and dumping ( #18216 )
2023-05-25 02:52:45 +02:00
yuyi
f1c647cbbe
parser: make most of parser methods private ( #18249 )
2023-05-25 02:51:59 +02:00
yuyi
190f5c69ea
os: fix open_file() on windows ( fix #18245 ) ( #18253 )
2023-05-25 02:50:52 +02:00
Mark aka walkingdevel
351b2e0e42
mysql: refactor, comments, simplify ( #18258 )
2023-05-25 02:50:15 +02:00
Alexander Medvednikov
c45c36ccce
orm: improve an fkey error a bit
2023-05-24 18:30:44 +02:00
Felipe Pena
e8dbd2c0c7
parser: fix enum attr with default value ( #18248 )
2023-05-24 17:25:27 +03:00
yuyi
099d4fc06f
parser: clean up in parser.v ( #18247 )
2023-05-24 06:51:15 +03:00
Turiiya
e8046439f0
cgen: include float kind in struct field type defaults ( #18228 )
2023-05-24 06:50:45 +03:00
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