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
Alexander Medvednikov
88e33a83de
gg: fix draw_image on macos native; vcreate: vweb template
2022-12-21 19:33:37 +03:00
yuyi
ccbb8ab0ca
ast, parser: fix generic struct init with nested generic struct ( #16736 )
2022-12-21 18:32:54 +02:00
Delyan Angelov
1cde55478d
cgen: fix cgen errors for overloaded operators using reference types for the receiver and operand ( fix #16725 ) ( fix #15859 ) ( #16726 )
2022-12-21 09:10:30 +02:00
Felipe Pena
2f9becc98d
cgen: fix debug generated code with -g
, while fixing #16690 ( #16723 )
2022-12-20 16:41:42 +02:00
Delyan Angelov
3c920f2ee6
x.json: fix parsing of time fields, that have just a single date encoded inside the parsed string ( fix #16722 )
2022-12-20 16:34:09 +02:00
pancake
c84eb29b78
js: use write() on the freestanding backend ( #16704 )
2022-12-20 13:16:06 +02:00
John
eb8e8b8642
rand: add Blackman/Vigna xoroshiro128++ PRNG ( #16712 )
2022-12-20 10:53:30 +03:00
Felipe Pena
0fe7ae3a60
cgen: remove repeated code ( #16718 )
2022-12-20 10:52:37 +03:00
Larpon
7e4dc24f1b
math: add math.vec
module with generic 2D, 3D and 4D vector operations ( #16710 )
2022-12-19 18:10:48 +02:00
yuyi
2090e4a12f
ast, cgen: optimize generic struct with inconsistent generic types ( #16708 )
2022-12-19 15:02:27 +02:00
Delyan Angelov
353fdb4ca0
ci: workaround for v vet failing for v clean-code over the new v bench script (using \ in its path on windows).
2022-12-19 12:31:16 +02:00
Delyan Angelov
cbd34cd6e7
bench: add bench_string_key_in_map_vs_string_value_in_array.v
2022-12-19 11:56:00 +02:00
yuyi
aad95ac818
cgen: fix generic struct init with inconsistent generic types ( fix #16677 ) ( #16702 )
2022-12-19 10:43:27 +02:00
Felipe Pena
04936b00c5
cgen: fix struct selector with or block ( #16695 )
2022-12-18 14:22:06 +02:00
Delyan Angelov
de5ae63401
parser: improve precision of struct field type positions in errors
2022-12-18 13:34:39 +02:00
Swastik Baranwal
5b4a16e864
checker: add err for unknown generic struct field ( #16698 )
2022-12-18 11:46:37 +02:00
yuyi
ba07e48691
ast, checker: fix checking generic struct type mismatch ( #16701 )
2022-12-18 10:29:44 +02:00
Delyan Angelov
9f1239c56e
vweb,net: fix vweb crash when the connection was closed prematurely (tested with Chrome on windows, refreshing as fast as possible)
2022-12-17 19:08:59 +02:00
yuyi
e83a8416d5
ast, parser: fix generic struct init with inconsistent generic types ( #16697 )
2022-12-17 18:17:43 +02:00
Felipe Pena
9921598c91
cgen: fix struct field initialisation with a fixed array ( #16692 )
2022-12-17 18:15:17 +02:00
Delyan Angelov
1aec40a126
vweb: flush stdout after the Running app on
message, fix potential invalid map value access in serve_if_static
2022-12-17 18:04:50 +02:00
Felipe Pena
65a020e385
cgen: fix comptime checking optional type with IS operator ( #16688 )
2022-12-16 16:53:04 +03:00
l-m
f0a252d0e6
builtin: apply .nogrow
flags to gcboehm array ( #16689 )
2022-12-16 07:57:50 +02:00
Delyan Angelov
0a11955284
parser: support an unambiguous sizeof[T]() and isreftype[T]() (part 1) ( #16684 )
2022-12-15 19:21:52 +02:00
Ikko Ashimine
e5e73ebbfa
regex: fix typo in regex.v ( #16683 )
2022-12-15 18:54:07 +02:00
Swastik Baranwal
bd1d96de0e
cgen: add support for alias map keys ( #16682 )
2022-12-15 18:53:23 +02:00
Delyan Angelov
3643785981
pref: deprecate -error-limit in favour of the documented -message-limit option.
2022-12-15 10:37:57 +02:00
yuyi
fd472d2d41
toml: minor cleanup in toml tests ( #16679 )
2022-12-15 10:16:42 +02:00
Makhnev Petr
db2111235e
tests: add a teamcity output format for V's test runner ( #16681 )
2022-12-15 09:29:09 +02:00
Felipe Pena
c3ee26f15f
checker,cgen: fix dump when using comptime variable val.${field.name} ( #16671 )
2022-12-14 20:45:28 +02:00
Delyan Angelov
f762d46c84
pg: add compatibility.h, using a PG_VERSION_NUM check in the preprocessor, to just hardcode the missing CONNECTION_ numbers
2022-12-14 18:27:42 +02:00
Delyan Angelov
3b683f11e0
pg: comment out C.CONNECTION_GSS_STARTUP, which is not available on Debian 10 (PG 11)
2022-12-14 16:39:29 +02:00
yuyi
8e3a90ae79
cgen: minor cleanup in struct_init() ( #16676 )
2022-12-14 15:25:09 +02:00
yuyi
8ab4c7742c
ast, checker: fix generic struct init with inconsistent generic types ( #16675 )
2022-12-14 14:57:12 +02:00
Delyan Angelov
173b1895d6
pg: cleanup implementation, make -cstrict
pass with both gcc-11 and clang-12 (by tightening the C wrapper declarations)
2022-12-14 13:17:00 +02:00
Hitalo Souza
70bb989537
doc: update the README for json2 ( #16657 )
2022-12-14 10:21:29 +02:00
l-m
acbd93b54c
builtin: add .nogrow
and .nofree
flags to array
( #16661 )
2022-12-14 09:44:14 +02:00
Subhomoy Haldar
b07e447764
encoding.html: add escape() function ( #16666 )
2022-12-13 22:10:57 +02:00
yuyi
69f7c45bec
builtin: fix array init with array default ( #16664 )
2022-12-13 18:05:33 +02:00
Felipe Pena
738fe77300
cgen: fix short circuiting behaviour of logical expressions, when several PrefixExpr's are used in if conditions ( #16660 )
2022-12-13 13:09:03 +02:00
Delyan Angelov
992621bd91
bench: add a small performance comparison script bench_json_vs_json2.v
2022-12-12 10:26:04 +02:00
Hitalo Souza
b682e9ec0b
json2: decode time.Time, supporting unix timestamps (like json
), as well as rfc3339 datetimes ( #16653 )
2022-12-12 10:06:29 +02:00
yuyi
8225622da5
checker: check smartcasting requires either an immutable value, or an explicit mut keyword before the value ( #16654 )
2022-12-12 09:22:56 +02:00
yuyi
d87e400e77
transformer: clean up expr_stmt_match_expr() ( #16655 )
2022-12-12 08:41:02 +02:00
Felipe Pena
1e7208d28b
parser: fix initialization for array of Option type - []?Cell{}
( #16652 )
2022-12-12 08:40:05 +02:00
Hitalo Souza
d7c244e5ec
x.json2: support time.Time values in encode ( #16643 )
...
* feat: json2 time.Time encode
* refactor: best var name
* fix: use 'RFC 3339' as pattern in json encode
* fix: unused var for unaliased_typ
* fix: improve test
* use the clearer test after V ad24c22
, that made format_rfc3339 more stable
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2022-12-11 16:54:28 +02:00
Delyan Angelov
ad24c22250
time: add more UTC/local time conversion functions, make Time.format_rfc3339 more stable
2022-12-11 13:34:01 +02:00
yuyi
73e886eafe
checker: fix generic fn returning result ( #16646 )
2022-12-11 12:34:58 +02:00
Delyan Angelov
94098eef79
time: use UTC time in Time.format_rfc3339, make test more robust
2022-12-11 10:36:29 +02:00
Delyan Angelov
2ecb892985
time: add Time.format_rfc3339() method
2022-12-11 10:23:05 +02:00
Hitalo Souza
e8c0b098b0
x.json2: add encode_pretty/1 ( #16634 )
2022-12-10 20:44:23 +02:00
Delyan Angelov
4b2699fddd
cgen: fix copying of a fixed array parameter to a function ( fix #16640 )
2022-12-10 20:10:01 +02:00
Hitalo Souza
30b39bebde
x.json2: refactor json tests ( #16638 )
2022-12-10 18:44:20 +02:00
lemon
799af2adad
native: support simple multi return ( #16628 )
2022-12-10 16:26:43 +02:00
Alexander Medvednikov
42a9eaac0e
regex: make match_string() receiver immutable
2022-12-10 13:03:42 +03:00
Delyan Angelov
7c02274754
v.pkgconfig: support PKG_CONFIG_PATH_DEFAULTS for overriding the default search path list too (enable easier -m32 with a custom tcc cross compiler)
2022-12-10 00:50:24 +02:00
Felipe Pena
1ba1f99b9c
orm: declare missing functions to handle literal types ( #16627 )
2022-12-09 20:34:34 +02:00
Hitalo Souza
b6c2aab092
json2: support encoding of optional struct fields ( #16521 )
2022-12-09 18:08:24 +02:00
Felipe Pena
ba8e61ebf3
cgen: fix return typeof[T]()
in generic functions ( #16626 )
2022-12-09 17:24:47 +02:00
yuyi
6c0f22416f
cgen: fix if cond with result or optional in infix expr ( #16625 )
2022-12-09 12:01:14 +02:00
yuyi
68fb4e9fe5
cgen: fixevaluation order for match expressions inside boolean ones ( fix #16554 ) ( #16616 )
2022-12-09 11:56:38 +02:00
Carter
eb88f7e255
builtin: fix bug with string.split_into_lines, when lines have extra CR's at their end ( #16620 )
2022-12-09 09:15:50 +02:00
Delyan Angelov
7091010a53
arrays: add map_of_counts/1, map_of_indexes/1 as well as index_of_first/2, index_of_last/2 utilities ( #16618 )
2022-12-09 00:37:07 +02:00
Felipe Pena
f365771499
cgen: fix nested struct generation for globals for gcc ( #16614 )
2022-12-08 21:38:01 +02:00
谢克
32c80c53b3
cgen: fix generic functions returning none or error values with generic result types ( #16613 )
2022-12-08 11:08:39 +02:00
Felipe Pena
2261606b56
checker: disallow Bar{...foo}
when Bar needs more fields, than what foo
has ( #16609 )
2022-12-07 16:56:07 +02:00
Delyan Angelov
458e68e196
orm,sqlite,mysql,pg: cleanup import v.ast
, using typeof[Type]()
2022-12-07 13:40:46 +02:00
yuyi
4eb81d2f05
checker: improve error messages of missing generic type names ( #16610 )
2022-12-07 11:29:18 +02:00
Delyan Angelov
48a7de643e
all: support typeof[ T ]().idx and typeof[ T ]().name, where T can be any type, including ![]&string
( #16513 )
2022-12-07 11:26:27 +02:00
Swastik Baranwal
bb705c01d2
parser: add proper error msg for :=
used in const decl ( #16607 )
2022-12-06 22:44:33 +03:00
yuyi
921416d821
parser: fix parsing generic types using '[]' in anon fn decl ( #16605 )
2022-12-06 18:15:59 +02:00
Felipe Pena
cf015e5073
checker: add clearer errors for break
/continue
used within a $for
loop ( #16600 )
2022-12-06 17:27:59 +02:00
Swastik Baranwal
ada8643ac5
checker: disallow using builtin type names for const names ( #16599 )
2022-12-06 15:44:25 +02:00
yuyi
e35f5f290e
cgen: fix string of map with generic struct value ( #16595 )
2022-12-06 12:38:05 +02:00