Commit Graph

13075 Commits (db4b49a5cabd2b70e2680a8384453568e6e09d38)

Author SHA1 Message Date
Delyan Angelov a886242700
ci: extract ubuntu-docker-musl and alpine-docker-musl-gcc to containers_ci.yml, so they can be easily turned on/off in private github actions 2022-02-18 10:31:01 +02:00
Delyan Angelov 3bcd11260f
ci: move alpine-docker-musl-gcc and ubuntu-docker-musl to other_ci.yml 2022-02-18 10:25:04 +02:00
Delyan Angelov ef5ea0ef21
ci: fix vweb failures (restore the ability to *force* vweb to listen to *only* local interfaces) 2022-02-18 10:18:04 +02:00
Alexander Medvednikov 3d46005195 tools/fast: bring back -usecache 2022-02-18 10:41:53 +03:00
Joe Conigliaro f4051e0252
checker: make sure generic struct instantiation uses a known type. closes #13506 2022-02-18 17:54:52 +11:00
Anton Zavodchikov da9331f8ff
vweb: support ipv6 (#13498) 2022-02-17 23:13:36 +03:00
Delyan Angelov eb45a321a5
tools: add cmd/tools/regress.v to simplify bisecting for regression bugs/features:
Support finding which commit introduced a regression:
       ./v run cmd/tools/regress.v --old COMMIT --command './v run /abs/path/to/regression_bug.v'

   Support also finding which commit introduced a feature (or made code compile/run):
       ./v run cmd/tools/regress.v --old COMMIT --command '! ./v run /abs/path/to/feature.v'

   NB: the '! ' is a POSIX shell feature. It may not work on Windows outside of WSL.
   Its meaning is to invert the exit code for the next command, i.e. 0 -> 1, non 0 -> 0

   If it does not work for you, you need to write a more explicit script that will exit
   with 0 code for all commits, where the feature does NOT work, and with non 0 code for
   all commits, where the feature does work.
2022-02-17 18:07:28 +02:00
Joe Conigliaro d739abbb3f
cgen: move var decl out of loop in global_decl() 2022-02-18 00:42:54 +11:00
Delyan Angelov ebb66aa82c
tools: support `git bisect run cmd/tools/oldv --bisect --command "./v run /abs/path/to/regression.v"` 2022-02-17 15:34:55 +02:00
Delyan Angelov 554a689213
ci: be more verbose when running make.bat on the CI 2022-02-17 13:26:23 +02:00
Joe Conigliaro 07b15a209a
cgen: fix for prev commit - get usecache working with clang (fix duplicate symbols) 2022-02-17 22:24:58 +11:00
Joe Conigliaro 6fc654821f
cgen: get usecache working with clang (fix duplicate symbols) 2022-02-17 22:17:07 +11:00
Delyan Angelov 245b70cabc
checker: bump iface_level_cutoff_limit to 100 (fix ci) 2022-02-17 11:46:04 +02:00
Delyan Angelov 230dc26858
checker: bump iface_level_cutoff_limit to 99 (fix ci) 2022-02-17 11:42:34 +02:00
yuyi 4f9039991f
parser: cleanup in check_undefined_variables() (#13496) 2022-02-17 10:16:52 +02:00
Delyan Angelov 901a4d8b84
checker: restrict too deep recursion, to prevent stackoverflows on windows
For v itself, the nesting levels do not exceed 15, so a limit of 40 seems reasonable.
2022-02-17 10:04:11 +02:00
yuyi 842fd7a27e
parser: check assign expr with undefined variables of struct_init (#13495) 2022-02-17 10:21:03 +03:00
Delyan Angelov 89b99ad4c3
scanner: remove the restriction for \x00 in strings (#13493) 2022-02-16 23:41:05 +02:00
blackshirt 54b10e99a1
ed25519: make public ed25519.internal.edwars25519.Element (#13488) 2022-02-16 22:56:14 +02:00
Tarcisio Gruppi f68144774d
fmt: fix map missing a comma after enum keys, leading to non parsable code (#13481) 2022-02-16 21:08:29 +02:00
Delyan Angelov d3b8ac2e46
ci: remove the -silent flag for CI jobs (the failing tests are listed at the end of the run anyway) 2022-02-16 21:02:36 +02:00
yuyi f8b8950b96
checker: check mut interface arguments (#13479) 2022-02-16 11:53:41 +02:00
Alexander Medvednikov 5a14748e7c cgen: c2v enum fix 2022-02-16 12:05:32 +03:00
Delyan Angelov 9c24d09dc3
strconv: bug fix for "${239.5:0.0f}" (#13483) 2022-02-16 11:33:29 +03:00
starryskye 6d2a88e31f
net.smtp: add STARTTLS and implicit SSL support (#13473) 2022-02-16 09:18:51 +02:00
vyrus001 d4fc8601e0
builder: fix clang failing to link on windows due to an -ftlo error (#13470) 2022-02-16 09:13:26 +02:00
Mihai Galos b8d656b308
examples: enhance the call_v_from_python example, with a fn accepting 2 f64 params (#13480) 2022-02-16 09:12:49 +02:00
blackshirt 3ac4155f0c
crypto: add an ed25519 digital signature module (#13476) 2022-02-15 21:28:14 +02:00
Delyan Angelov ff34b79d39
crypto: implement `rand.bytes(needed_bytes int) ?[]byte`, use it consistently instead of the old rand.read(), which will change to be compatible with io and the pseudo random `rand` module 2022-02-15 18:39:33 +02:00
Larpon 80444c8ec4
strings: add find_between_pair (#13468) 2022-02-15 15:12:15 +02:00
Delyan Angelov d25652fbcf
parser, ast: support -d for trace_rewrite_already_registered_symbol, trace_register_sym, trace_parse_stmt, trace_parse_comptime, trace_parse_text, trace_parse_file, trace_parse_vet_file 2022-02-15 13:20:40 +02:00
yuyi fb3dd82400
cgen: fix interface embedding complex cases (#13472) 2022-02-15 12:41:40 +02:00
mint 73cf597bec
ci: remove now-useless mlibc stuff from Vinix workflow (#13471) 2022-02-15 11:19:28 +02:00
yuyi f9fc136c24
all: rename InterfaceDecl.ifaces to InterfaceDecl.embeds (#13475) 2022-02-15 11:17:39 +02:00
crthpl e23db2f9b7
cgen: fix autogen free method for struct with shared field (#13469) 2022-02-15 03:55:06 +02:00
Delyan Angelov 89e9f8a00c
ci: fix vinix compilation to commit aa18fc0 (Meson building mlibc fails in a01546b) 2022-02-14 21:25:50 +02:00
yuyi dc0b0c83c6
ast: fix error for interface embedding call (#13466) 2022-02-14 19:22:44 +02:00
Delyan Angelov f8bf3db568
markused: always include slice_ni & substr_ni too (support s#[] and a#[] in -skip-unused) 2022-02-14 19:05:30 +02:00
igor efdbe9d92c
repl: fix `list` command deleting '/'; adapt the logo to the terminal size (#13462) 2022-02-14 16:18:20 +02:00
yuyi 8119a297f7
ast: fix error for 'struct embed is interface' (#13465) 2022-02-14 13:43:36 +02:00
yuyi b2f984280b
checker: strengthen the judgment of generic type parameters replacement, merge generic type init tests (#13460) 2022-02-14 02:38:47 +02:00
yuyi 2e0f8ee9e2
ast: fix error for struct embedding with interface (#13457) 2022-02-14 02:33:47 +02:00
Vincenzo Palazzo bf11df40e2
readline: give the possibility to ignore the empty line in the history (#13452) 2022-02-14 00:12:25 +02:00
blackshirt 57e850e932
crypto.sha512, crypto.sha256 : Make public the `write()` and `sum()` methods (#13461) 2022-02-14 00:10:50 +02:00
Delyan Angelov 74048e2f17
net: simplify the TcpConn.read_line/0 method, accumulate partially read lines, use a string builder, instead of concatenation 2022-02-13 22:42:38 +02:00
Vincenzo Palazzo 6ea4f361a1
urllib: fixed regression in the set function (#13455) 2022-02-13 15:06:00 +02:00
igor 9ff0c51e61
repl: reduce the vertical size used by V's logo, put it on the left of the info texts (#13451) 2022-02-13 11:41:36 +02:00
Delyan Angelov bad30bdd79
os: allow using XDG_CACHE_HOME for choosing the folder returned by `os.cache_dir()` on windows too 2022-02-13 11:18:51 +02:00
yuyi 5071a54b99
cgen: split up into for.v, match.v, struct.v (#13454) 2022-02-13 07:52:49 +03:00
yuyi b5379255da
checker, cgen: fix error for struct embed with fn type (#13450) 2022-02-12 20:55:40 +02:00