1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
Commit Graph

11871 Commits

Author SHA1 Message Date
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
Delyan Angelov
9267e41337
cgen: fix v -prealloc file_test.v 2023-04-09 09:35:43 +03:00
l-m
d2f69472b2
vlib: add a wasm module, implementing a pure V webassembly seralisation library (#17909) 2023-04-09 07:55:02 +03:00
penguindark
9658d20f03
strconv.atoi: optimization (#17913) 2023-04-09 05:54:38 +02:00
Delyan Angelov
fdc22b9020
ci: mark array_access_optimisation_test.v as flaky, and retry it 3 times 2023-04-09 06:32:28 +03:00
Delyan Angelov
cd629cfeab
cgen: do not generate the stringified values for assert x in y, for the pass case (#17908) 2023-04-08 18:51:46 +03:00
Delyan Angelov
ebfc4b4663
builtin: remove test for the deprecated []int.reduce/2 2023-04-08 18:47:04 +03:00
Delyan Angelov
48d42287a9
v.markused: enable v -skip-unused -live run examples/hot_reload/bounce.v 2023-04-08 14:36:01 +03:00
yuyi
e70084f203
ast: clean up ast.v, table.v and types.v (#17906) 2023-04-07 16:58:34 +03:00
lemon
e300fb428a
math: add maxof[T]() and minof[T]() (#17905) 2023-04-07 15:48:37 +03:00
yuyi
237f9446e2
checker, cgen: fix type alias of pointer (#17904) 2023-04-07 10:19:25 +02:00
Swastik Baranwal
65abfa8219
checker: disallow printing void (#17901) 2023-04-07 06:40:11 +02:00
Petr Makhnev
812a17fb43
tests: use isreftype[T]() and sizeof[T]() syntax, fix vfmt to support them, when written explicitly (#17103) 2023-04-06 20:02:55 +03:00
Felipe Pena
1113205376
json: fix [raw] for option string (#17899) 2023-04-06 18:26:17 +03:00
Subhomoy Haldar
a773e44430
rand: update documentation for normal and normal_pair (#17898) 2023-04-06 17:52:09 +03:00
Ikko Eltociear Ashimine
7838ef366a
crypto.pem: fix typo in decode.v (#17896)
seperator -> separator
2023-04-06 12:12:45 +03:00
yuyi
31ffbc7a87
scanner: fix string interpolation string literal with fmt (#17895) 2023-04-06 12:11:15 +03:00
Casper Kuethe
930bdd935b
vweb: fix static files copying (#17891) 2023-04-06 03:10:23 +02:00
walking devel
9957356a84
encoding.base32: change ? to ! (#17892) 2023-04-06 03:09:05 +02:00
Felipe Pena
b4e8e812fe
json: fix encode/decode fixed array (#17887) 2023-04-06 01:15:23 +03:00
Delyan Angelov
dce65c7f46
tools: make v watch webserver.v monitor files used through $tmpl as well 2023-04-06 00:45:25 +03:00
Felipe Pena
7334f673a0
cgen: fix cast option ptr (#17884) 2023-04-05 22:29:18 +03:00
Swastik Baranwal
902d0dc93d
checker: allow ~T(0) where T is int (#17886) 2023-04-05 13:05:18 +03:00
Surman The Dead
39b3a0ca17
encoding: add an encoding.leb128 module with tests (#17880) 2023-04-05 11:53:25 +03:00
ChAoS_UnItY
b2cf6d0af4
cgen: fix wrong indent generation in anon fn decl (#17879) 2023-04-05 11:22:36 +03:00
Swastik Baranwal
d30e1a52e2
checker: disallow unwrapped option/result with in operator (#17875) 2023-04-05 11:20:42 +03:00
walking devel
fc4c431d83
v: rename sql.v -> orm.v for consistency (#17877) 2023-04-04 22:35:52 +03:00
yuyi
467a1b4435
fmt: remove redundant parenthesis in the complex infix expr (#17873) 2023-04-04 13:47:48 +03:00
walking devel
8452644ec3
orm: enforce that queries always return a Result, a query-resulting array can be used as a V array in place. (#17871) 2023-04-04 08:23:06 +03:00
l-33ter
9addede0ea
readline: README.md change '?' to '!' (#17868) 2023-04-04 02:51:30 +03:00
yuyi
4f532c0830
checker: fix fn returning alias of pointer (fix #17861) (#17864) 2023-04-03 19:32:55 +03:00
Swastik Baranwal
1dcec62c19
checker: disallow top level decl builtin fn (#17857) 2023-04-03 17:30:05 +03:00
yuyi
22afdb5cbf
cgen: fix gen_str_for_map() (#17862) 2023-04-03 14:42:01 +03:00
yuyi
a9bb6865fd
scanner: fix checking comments not terminated (fix #17842) (#17855) 2023-04-03 14:37:52 +03:00
yuyi
33ba24e933
scanner: fix nested multiline comments (#17859) 2023-04-03 14:35:27 +03:00
Delyan Angelov
88de0decf6
v.pref: allow passing file names to v scripts, that use -raw-vsh-tmp-prefix, without showing a Too many targets error message. 2023-04-03 05:07:12 +03:00
ChAoS_UnItY
de34e15df7
cgen: fix multi return variable ignore in if guard (#17853) 2023-04-02 15:47:54 +02:00
Swastik Baranwal
01caecc284
checker: add check for unwrapped option in array cap (#17851) 2023-04-02 15:47:08 +02:00
Casper Kuethe
b2735bf937
vweb: add controllers (#17840) 2023-04-02 15:46:43 +02:00
ChAoS_UnItY
c7237b1c58
cgen: fix result of typeof function returns result type (#17849) 2023-04-02 02:25:34 +02:00
Josh Montoya
51ad565ed6
vweb: implement worker pool (#17298) 2023-04-02 01:24:33 +02:00
Felipe Pena
1471ba4678
checker: fix missing check for initializer with function returning options (#17820) 2023-04-02 00:03:42 +03:00
Delyan Angelov
6aec8244f0
strings: simplify Builder.drain_builder; add test (#17846) 2023-04-02 00:03:00 +03:00
Delyan Angelov
58dd9ee6a2 tests: make the flaky array_access_optimisation_test.v failures on the macos CI, more easily diagnosable 2023-04-01 17:33:44 +03:00
Felipe Pena
5b8d6c0a60
cgen: fix match tmp var needing check when working with option on branches (#17837) 2023-04-01 08:19:23 +03:00
Spydr
fedf0f7939
native: rune type literals/printing, pointer comparison and some missing branches in functions (#17839) 2023-04-01 01:09:02 +03:00
yuyi
e1b8617c94
ast, cgen: fix generic closures with different generic types (fix #17829) (#17834) 2023-03-31 18:08:42 +03:00
yuyi
6ff1c0a0b2
checker: fix generic struct init with update expr (fix #17824) (#17827) 2023-03-31 10:59:52 +03:00
ChAoS_UnItY
ff0adba8a9
tests: fix file partially not fmt, caused by fixed vfmt bug (#17828) 2023-03-31 10:22:31 +03:00
Felipe Pena
cd6cc65ece
json: fix [omitempty] with string (#17813) 2023-03-30 23:09:47 +03:00
Delyan Angelov
57aa4def62
net.html: do not inject <text> tags for text that contains only newlines and spaces 2023-03-30 23:02:57 +03:00
yuyi
b40aa4ffa9
cgen: fix embed struct with sumtype field (#17823) 2023-03-30 15:59:06 +03:00
Delyan Angelov
214f72ba03 tools: support VDOC_SORT=false ./v doc time 2023-03-30 14:35:54 +03:00
yuyi
b9352ce834
ast, parser, fmt: fix fmt error of generic fntype (#17814) 2023-03-30 13:30:10 +02:00
yuyi
d0702f3897
checker: fix if cond with alias (fix #17818) (#17821) 2023-03-30 13:29:08 +02:00
Delyan Angelov
4ef6e16e3b
bitfield: add [inline] for very commonly used simple methods 2023-03-30 11:53:02 +03:00
Thomas Mangin
580d9cedc7
termios: new termios module (#17792)
* termio: new termio module

move the tcgetattr and tcsetattr functions in a new termio module.
The code needed refactoring as different OS have different fields
size, position and number for the C.termios structure, which
could not be correctly expressed consitently otherwise.

It has the positive side effect to reduce the number of unsafe calls.
New testing code was also added for the readline module as it is
relying of the feature.

* apply 2023 copyright to the new files too
2023-03-30 08:58:52 +03:00
Alexander Medvednikov
0826102e0a sokol: enable VALIDATE_NON_FATAL 2023-03-30 00:10:49 +02:00
Alexander Medvednikov
d60ceb45cd gg: make create_image() return !Image 2023-03-29 19:04:41 +02:00
Felipe Pena
75deb66fd4
json: fix decode option string (#17812) 2023-03-29 18:45:41 +02:00
yuyi
dd0b68ac90
checker: check if guard returning non-propagate option or result (fix #17742) (#17794) 2023-03-29 14:51:29 +03:00
Alexander Medvednikov
6756d28595 all: 2023 copyright 2023-03-28 22:55:57 +02:00
Casper Kuethe
1f613a082a
vweb: use net.http.Cookie (#17807) 2023-03-28 22:27:01 +02:00
Delyan Angelov
ff5df2ce07
cgen: small cleanup in comments (init: it -> init: index) 2023-03-28 15:06:06 +03:00
yuyi
4007c6cf89
checker: check generic struct infering error (#17802) 2023-03-28 15:00:08 +03:00
Felipe Pena
db8331da24
cgen: fix fixed array of string item concatenation (#17801) 2023-03-28 14:56:54 +03:00
yuyi
da153aa780
checker, cgen: fix asserting if guard expr (#17793) 2023-03-28 11:40:33 +03:00
Alexander Medvednikov
5e48817dc8 parser: remove duplicated pascal case check 2023-03-27 13:38:21 +02:00
Heptalon
6b4fb0fc3e
checker: fix missing check for option value on non-optional struct field assignment (#17785) 2023-03-27 04:11:56 +02:00
yuyi
f08b88223d
checker: fix returning error in if expr (#17783) 2023-03-26 18:10:06 +02:00
yuyi
130f35c776
checker: fix embedded struct field with default value (#17777) 2023-03-26 11:33:01 +03:00
ChAoS_UnItY
34f5f05efa
ast: fix concrete fn type that returns pair type as generic type (#17780) 2023-03-26 11:29:52 +03:00
Subhomoy Haldar
8759409a69
math.big: fix min i32 value bug (#17775)
* attempt big int min value fix

* cast value for correct comparison

* update edge case

* add one more test
2023-03-26 08:45:42 +03:00
Casper Kuethe
1fe5aca782
vweb: middleware implementation (#17730) 2023-03-26 00:57:42 +01:00
Delyan Angelov
db97630117
examples, orm: fix orm example; add -d trace_orm option to see all ORM generated queries (#17770)
* orm: add tracing of the generated queries by the orm module, when a program is compiled with `-d trace_orm`

* examples: fix examples/database/orm.v, add comments, and ensure that the example can be run several times with no errors

The example demonstrates connecting to all 3 DBs in the same program, and will be added to the CI very soon,
to serve both as a regression test, if it fails, and as an example to how to use the ORM in combination with
raw SQL queries to the DBs (which are driver/wrapper specific, unlike the ORM, but can be more convenient in some situations).
2023-03-25 21:46:17 +02:00
ChAoS_UnItY
f5f45d846e
ast: fix concrete function type used as generic type (#17769) 2023-03-25 21:45:19 +02:00
penguindark
3d2d330478
regex: fix issue with multiple repetitions out of the groups (#17774) 2023-03-25 20:49:01 +02:00
Felipe Pena
24cc5920e6
cgen: multiple auto equality func generated fixes (#17756) 2023-03-25 20:45:18 +02:00
Swastik Baranwal
0a8a0fdb0e
checker, cgen: fix check and cgen for match x { StructName {} } and match x { y {} }, where x is a mutable receiver (#17755) 2023-03-25 14:38:47 +02:00
yuyi
17c4eb49fb
parser: clean up in parse_generic_inst_type() (#17766) 2023-03-25 08:39:23 +02:00
yuyi
a9f55de352
checker: fix generic array delete in skip_unused mode (#17759) 2023-03-25 08:31:25 +02:00
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