Commit Graph

1268 Commits (d86b18844e34a69ed3d83d8566b22002825feb3c)

Author SHA1 Message Date
pancake 1b691e7612
native: implement for-c and for-in range loops (#12155) 2021-11-30 11:49:30 +02:00
Larpon 5deb56fc79
docs: add `v shader` section, add help text (#12594) 2021-11-28 17:17:04 +02:00
pancake 89bab98833
native: implement a working hello world compilation for w64 (#12577) 2021-11-26 19:03:15 +02:00
Eragon fb3a793a27
tools: add "skip to content" link for screan reader and tui browsers (#12571) 2021-11-25 02:53:02 +02:00
Delyan Angelov d431145a39
v.util,tools: use os.join_path_single 2021-11-22 21:42:55 +02:00
Subhomoy Haldar 2794aa623a
tools: include `vls.log` in the .gitignore files for new V projects (#12522) 2021-11-19 19:23:35 +02:00
yuyi 5a89c0a480
ast: change CompFor to ComptimeFor (#12482) 2021-11-17 08:29:43 +02:00
yuyi c28041cecc
all: cleanup/rename all `comp_` names to be `comptime_` (#12467) 2021-11-15 15:47:29 +02:00
Delyan Angelov 7b723262e4
tools: support `VJOBS=1 VTEST_FAIL_FAST=1 ./v test .` 2021-11-15 11:44:54 +02:00
MrsHerobrine 1c17ba82ac
tools: fix the batch script for `v symlink`, if the vexe path contains spaces on windows (#12443) 2021-11-12 10:29:57 +02:00
yuyi 08667c5645
pref: allow running a .vsh script with just `v build.vsh gcc`, instead of `v run build.vsh gcc` (#12409) 2021-11-08 15:18:11 +02:00
lydiandy b963aff8e8
vast: update to latest V (#12387) 2021-11-04 19:57:51 +02:00
Delyan Angelov 4ed6fb0e9b
tools: cleanup a dump() from vwatch.v 2021-11-02 09:29:12 +02:00
Delyan Angelov eed94c727c
os: move C struct declarations in their own _default.c.v files (#12268) 2021-10-22 17:08:08 +03:00
Delyan Angelov a85707246f
help: document `-skip-unused` in the `v help` output. 2021-10-21 16:33:04 +03:00
Lance Fredrickson 7c1fff3495
builder: pass `-std=gnu99` to the C backend under linux (#12236) 2021-10-20 14:26:25 +03:00
Larpon 678e3a210d
tools: add vshader (#12195) 2021-10-16 22:10:48 +03:00
Delyan Angelov 6c728cf389
js: add draft support for -skip-unused (hello_world.v works) 2021-10-12 19:34:37 +03:00
Delyan Angelov 6c6bb08547
tools/vast: update vast to latest V 2021-10-11 15:52:06 +03:00
Delyan Angelov ceb24bc32e
tests: show the number of parallel jobs used while testing 2021-10-11 13:10:55 +03:00
Delyan Angelov 32ea53960e
v doc: show a proper error message instead of panic on `v doc -m file.v` 2021-10-09 11:56:37 +03:00
Delyan Angelov fbe54e49f5
tools: support `v fmt -w -backup file.v` 2021-10-07 13:59:49 +03:00
yuyi 5f736dd768
v test-cleancode: remove interop_test.v from the exceptions list (#12084) 2021-10-06 20:53:50 +03:00
yuyi 963233687e
v.fmt: fix fmt of 'fn(mut a &int)' (#12075) 2021-10-06 20:51:38 +03:00
yuyi 7bc3e67e24
fmt: fix import with symbols (fix #12065) (#12069) 2021-10-05 11:44:48 +03:00
Delyan Angelov 552daea04f
tools: fix the output of `v run cmd/tools/oldv.v d329e1d -c "./v file.v"` 2021-10-02 14:13:17 +03:00
playX 4333a53f28
js: support running `.js.v` tests in `v test-self`, fixes for array methods & codegen (#12011) 2021-09-29 15:33:14 +03:00
yuyi 8789cc422c
v.ast: fix fmt of 'bytestr' to '&byte' (#12014) 2021-09-29 13:53:46 +03:00
Delyan Angelov bf0b86774a
fix for the "v.c should be buildable with no warnings" step in `v test-all` 2021-09-28 10:34:54 +03:00
crthpl 85b58b03a3
cgen: parallelize (#10844) 2021-09-28 10:28:04 +03:00
Ulises Jeremias Cornejo Fandos c151e075e1
context: update ValueContext to handle Any value and more Key types, use closures (#11993) 2021-09-27 17:52:20 +03:00
yuyi 108a01d65f
fmt: fix unnecessary line break in array init (fix #11448) (#11562) 2021-09-21 16:20:09 +03:00
Delyan Angelov 5cf0ee46b3
v.pref,v.builder: support overriding the C cross compiler by setting `VCROSS_COMPILER_NAME` 2021-09-20 19:57:43 +03:00
Delyan Angelov df8a4a03a0
tests: support `// vtest retry: 4` for marking flaky tests 2021-09-18 11:48:32 +03:00
JalonSolov 1688148828
flag: switch panics to optionals (#11515) 2021-09-16 19:25:05 +03:00
yuyi ef690dc06b
testing: remove panics when cleaning up after test runs (#11505) 2021-09-15 15:15:46 +03:00
Delyan Angelov 6ea750da8d
v test-all: add a `v run examples/v_script.vsh` step too 2021-09-10 12:45:52 +03:00
Enzo e57b068df0
os: add `open_uri/1`, use it in `v bug` (#11450) 2021-09-09 10:48:53 +03:00
Enzo e3b65092d6
parser: deprecate `size_t` (#11443) 2021-09-08 13:09:32 +03:00
Ned Palacios aedb6b8e84
v.builder: implement a `-check` mode, that runs only the parser + the checker, without codegen (#11414) 2021-09-07 07:17:53 +03:00
Dialga fae0f8d821
tracev: fix running v tracev from directory with space (#11419) 2021-09-07 00:12:05 +03:00
Dialga 2cfc6e007d
test: allow testing files from a relative directory (#11391) 2021-09-06 03:11:58 +03:00
pancake 4503ff337b
v help: enumerate all `js_*` backends (#11383)
Co-authored-by: pancake <pancake@nopcode.org>
2021-09-04 11:03:21 +03:00
yuyi 8be2be8311
all: change 'if !(a in b)' to 'if a !in b' (#11330) 2021-08-29 11:55:18 +03:00
Delyan Angelov 25bf68e2f1
ci: os.chdir() fixes for windows jobs 2021-08-28 16:21:46 +03:00
Delyan Angelov 2b92ccecb5
ci: fix `v build-examples` and `v build-tools` 2021-08-28 12:44:03 +03:00
Steve Phillips 8a49a06201
v up: update os.chdir call to handle error (#11328) 2021-08-28 12:34:10 +03:00
Alexander Medvednikov f731060caf all: update chmod/chdir usages 2021-08-28 10:23:01 +03:00
Alexander Medvednikov 29f550158e all: update chdir usages 2021-08-28 09:39:18 +03:00
Delyan Angelov 5f90d5702e v test-self: support skipping specific tests for amd64/!amd64 (closure_test.v on m1 for now) 2021-08-27 09:47:04 +03:00
Wertzui123 ee961b26e7
tools: fix v doctor markdown in v bug (#11296)
Github needs separate lines for the start/end markers
2021-08-25 01:13:25 +03:00
lydiandy f87a638ddc
tools/vast: update vast to latest V (#11279) 2021-08-23 13:37:49 +03:00
Miccah 2cb0db633d
vweb: use Response struct for 302 response (#11245) 2021-08-20 01:13:36 +03:00
Miccah 6991a3c8d5
net.http: add graceful shutdown .stop() method to the http.Server struct (#11233) 2021-08-19 11:19:49 +03:00
Leo Developer 7bffabbce2
vdoc: add `-comments` and new comment merger (#11221) 2021-08-19 10:20:43 +03:00
Delyan Angelov 0cbc77d881
Revert "vpm: support `v install ui https://github.com/vlang/markdown` (git urls by default), cleanup vpm.v (#11189)"
This reverts commit eee71cebd4.
2021-08-18 18:58:24 +03:00
mahdi ramezaan zaade eee71cebd4
vpm: support `v install ui https://github.com/vlang/markdown` (git urls by default), cleanup vpm.v (#11189) 2021-08-18 14:05:10 +03:00
Delyan Angelov 46ede3fb98
v check-md: reduce false positives for too long lines in various cases (real problems are easier to spot now) 2021-08-16 10:12:29 +03:00
Alexander Medvednikov e09d3eef5f tools/fast: fix uploading 2021-08-16 08:33:53 +03:00
Alexander Medvednikov 22b1fca793 tools/fast: minor fixes 2021-08-16 08:26:50 +03:00
Alexander Medvednikov 765759817d ci: run fast.v with clang on freebsd 2021-08-16 06:30:35 +03:00
Delyan Angelov 6ee77724e8
cmd/tools/gen1m.v: fix unused variable warnings in 1m.v 2021-08-15 16:04:45 +03:00
Delyan Angelov 0be20f1556
v.pref: keep the -error-limit option for now too 2021-08-15 13:46:50 +03:00
Leo Developer b3094b0667
checker: abort prematurely on too many errors (#11185) 2021-08-15 13:41:51 +03:00
Delyan Angelov e0451c5b33
cmd/tools/fast/fast.v: use clang instead of tcc on the cirrus ci build ¯\_(ツ)_/¯ ... 2021-08-15 12:00:51 +03:00
Delyan Angelov 1a5c4b18ec
cmd/tools/fast/fast.v: do not use -no-std and -no-rsp anymore (tcc is the most recent on the CI runner now) 2021-08-15 11:52:11 +03:00
Delyan Angelov 0dde8ab0e5
cmd/tools/fast/fast.v: use -no-std for tcc too 2021-08-15 11:21:25 +03:00
Delyan Angelov eef7eea7bc
v.pref, v.builder: support `-no-std` (skips passing `-std=c99` to the C backend) 2021-08-15 11:05:06 +03:00
Delyan Angelov b1186cca3f
cmd/tools/fast/fast.v: use -no-rsp for tcc (which may be much older on freebsd) 2021-08-15 10:47:44 +03:00
Delyan Angelov f7cbcc241a
v.pref, v.builder: support `-no-rsp` (pass C options directly to the C compiler backend, without writing response files) 2021-08-15 10:47:44 +03:00
Alexander Medvednikov e6d79f2fa7 ci: run fast.v on freebsd 2021-08-15 09:27:17 +03:00
Alexander Medvednikov f1244bd7f1 ci: do not upload fast.v results 2021-08-15 09:22:01 +03:00
Alexander Medvednikov 1bfb525ce1 tools/fast: improve uploading to gh pages and print errors 2021-08-15 09:03:19 +03:00
Delyan Angelov 3ffa6c1664
v.pref: fix `./v -usecache -cg run examples/hello_world.v` 2021-08-15 08:35:41 +03:00
Leo Developer 8a8a0932f7
all: add limit to accumulated errors / warnings (#11183) 2021-08-14 19:49:21 +03:00
Delyan Angelov 900c37aa65
v.gen.c: support `T.typ` - an int for the type index of the generic type `T` (#11175) 2021-08-14 08:48:25 +03:00
mahdi ramezaan zaade 5bd602d0a7
vpm: install directly from git/hg (#11166) 2021-08-13 12:28:30 +03:00
Delyan Angelov 576664e31f
gg,sokol,stbi,gx,fontstash: cleanup for -Wimpure-v 2021-08-12 22:42:42 +03:00
Daniel Däschle e089d66225
vdoc: imrpove font spacing in the generated html docs (#11159) 2021-08-12 10:15:18 +03:00
Daniel Däschle 12fb4655f5
vdoc: use nicer font (#11151) 2021-08-12 09:21:31 +03:00
Enzo da53f818df
all: initial support for closures (x64 / linux-only) (#11114) 2021-08-10 21:27:15 +03:00
yuyi aceaaa681d
ast: fix formatting fn variadic of reference param (#11130) 2021-08-10 21:14:37 +03:00
yuyi 11794039e2
v.gen.c: fix fn variadic of reference param (#11115) 2021-08-10 10:36:11 +03:00
Daniel Däschle 52a3360a47
vpm: fix show command (#11093) 2021-08-09 01:49:17 +03:00
zakuro 490dec222f
fmt: keep char literal, `'` (#11060) 2021-08-06 06:21:28 +03:00
yuyi b95224aa20
vself: fix command line args (#11072) 2021-08-06 06:21:00 +03:00
Daniel Däschle 800c0e5092
vlib: remove deprecated map{} usages as well as deprecated functions (#11035) 2021-08-04 12:44:41 +03:00
Delyan Angelov 0675079b98
ci: skip const_comptime_eval_before_vinit_test.v with MSVC 2021-07-30 21:46:59 +03:00
Delyan Angelov afb7168a64
hash: move dummy map initialisation into an `fn init(){}`, so users do not have to do it explicitly to be compatible with -skip-unused 2021-07-30 13:25:37 +03:00
Hunam 0f09228adb
vdoc: fix wrong escaping in HTML docs (#10638) 2021-07-30 12:00:03 +03:00
Delyan Angelov ae05ab880e
ci: fix ubuntu-tcc job 2021-07-29 14:25:33 +03:00
Uwe Krüger abd17ddb6a
cgen: initialize globals with default initializer when none is given. (#10979) 2021-07-27 20:14:30 +03:00
Delyan Angelov 90b9b9d755
v doc: small clean of `Return to contents` markdown link 2021-07-27 13:00:07 +03:00
Delyan Angelov 6134c4870b
v.util: extract v.util.version, use it to speed up building `v repl`, `v up` and `v doctor` 2021-07-27 12:59:56 +03:00
Delyan Angelov 517260a1eb
v help: support `v help topics` to list all help .txt file names 2021-07-26 09:41:11 +03:00
Delyan Angelov 88a49d35e3
v help: fix typo in `v help build-c` 2021-07-26 09:41:10 +03:00
Alexander Medvednikov e246ed9818 cgen: fix VUNREACHABLE on freebsd/tcc 2021-07-25 16:29:05 +03:00
Delyan Angelov 744a753b47
v help other: describe bug and ast subcommands 2021-07-25 10:15:38 +03:00
Alexander Medvednikov 852ca5f7cf tools/fast: location fix 2021-07-25 03:16:50 +03:00
Alexander Medvednikov f691a80145 tools/fast: location fix 2021-07-24 23:41:55 +03:00
Louis Schmieder 1943da54a5
orm: integrate psql to orm (#10933) 2021-07-24 20:49:40 +03:00
Uwe Krüger 1e5627e777
parser: don't require unary `>` prefix for `select` timeout (#10928) 2021-07-23 23:24:27 +03:00
Louis Schmieder 26db3b0995
orm: redesign orm (re-write it in V) (#10353) 2021-07-23 12:33:55 +03:00
Daniel Däschle ed234188b7
scanner: fix single backslash in raw string (#10890) 2021-07-22 17:02:11 +03:00
Delyan Angelov d41a4ec662
v test-self: check unsafe_test.v, match_test.v, match_in_fn_call_test.v with -cstrict 2021-07-20 19:34:16 +03:00
Delyan Angelov 5098334e65
os: add execute_or_exit(cmd), use it consistently instead of execute_or_panic(cmd) 2021-07-20 15:22:04 +03:00
Daniel Däschle ad3835b598
parser: deprecate short struct init (#10842) 2021-07-20 11:17:08 +03:00
Uwe Krüger dc045806f9
docs: describe usage of atomic C functions (#10861) 2021-07-20 08:31:20 +03:00
Delyan Angelov 016240d00b
v: support `-o - x_test.v` too, describe `-o -` in the `v help` screen 2021-07-18 16:41:32 +03:00
Delyan Angelov a007dd5d22
builder: support `-o -` to print the generated C/JS source to stdout 2021-07-18 16:26:50 +03:00
yuyi a5c784830b
all: simplify global_scope processing (#10848) 2021-07-18 15:29:34 +03:00
Delyan Angelov 6edfb2c7fe
v.parser: eliminate PrefixExpr from `&Type(x).name` and `&Type(x)[idx]` too (fix vinix build) 2021-07-17 20:20:20 +03:00
William Gooch 51dd8304bb
tools: make the `v` REPL help screen look nicer (#10833) 2021-07-17 11:23:29 +03:00
Delyan Angelov 7c5f012cbc
v: add a warning note to `v repl` 2021-07-16 12:01:51 +03:00
Delyan Angelov 027be2ecd4
tests: show a list of all failed commands in the summary too 2021-07-15 11:53:14 +03:00
Delyan Angelov 5322a25690
tests: detect missing -o v.c files earlier 2021-07-13 22:24:38 +03:00
Daniel Däschle 78a41969f6
vdoc: fancier attributes (#10789) 2021-07-13 19:44:22 +03:00
shadowninja55 f4d4f56d97
doc: fix html doc closing tags (#10787) 2021-07-13 16:45:17 +03:00
crthpl 5089eb4a84
parser: fix pointer cast expressions hack (#10777) 2021-07-13 12:01:24 +03:00
Delyan Angelov 85564b7b83
vinix: support -os vinix (part 1) 2021-07-13 11:24:09 +03:00
shadowninja55 d1f1c5ae51
v doc: add attribute tags to `v doc -f html` (#10778) 2021-07-13 08:27:20 +03:00
Delyan Angelov b09fa69cb3
v ast: use `flag`, add ability to combine -p and -w, implement --hide pos,name_pos,args,global_scope,scope 2021-07-12 14:53:14 +03:00
pancake fe65cde03b
tools: use os.symlink instead of system('ln -s') in `v symlink` (#10769) 2021-07-12 14:23:25 +03:00
Delyan Angelov 0a66d8dc10
v ast: allow analyzing .vsh files too 2021-07-12 13:24:40 +03:00
Thomas Treffner 533f09f7a2
tools: fix `v symlink` problem with paths containing spaces (#10756) 2021-07-11 18:54:24 +03:00
Delyan Angelov 972cbe2e9a
serenity: add more support 2021-07-09 11:33:51 +03:00
pancake 9356c329ac
native: drop x64 backend reference (#10701) 2021-07-08 21:26:07 +03:00
Delyan Angelov 972542d6ee
checker: `[noreturn]` part 2 (cleanup) (#10667) 2021-07-05 05:05:37 +03:00
yuyi b0b4b8e65b
checker: fix missing check generic fn call args (fix #10649) (#10657) 2021-07-04 19:15:15 +03:00
Tomas Hellström ec973f5c6e
x.websocket: move to net.websocket module (#10648) 2021-07-03 02:56:00 +03:00
Delyan Angelov e108a67952
tools: fix compilation of an instrumented vdbg in `v bug hw.v` (module lookup problem due to abs path) 2021-06-30 14:40:04 +03:00
Lukas Neubert 806719786f
vast: print Position.last_line (#10600) 2021-06-28 16:23:34 +03:00
Delyan Angelov 809aa9af65
v init: change text to indicate that `v init` creates projects 2021-06-24 18:31:23 +03:00
crthpl 500b48788e
parser, cgen: fix basic asm registers, fix numbered labels in addressing, support indirect branching (#10545) 2021-06-23 14:20:07 +03:00
Delyan Angelov 816bf308ad
v test-all: add a -freestanding check on Linux 2021-06-23 13:33:16 +03:00
Yuriy Zymlex 6736817bba
parser: fix `rewind_scanner_to_current_token_in_new_mode` (#10495) 2021-06-22 20:17:36 +03:00
Delyan Angelov c43791b0f5
ci: fix vcreate_test.v on windows 2021-06-22 20:08:20 +03:00
Delyan Angelov b6bd6d1d35
tests: add cmd/tools/vdoc/tests/vdoc_file_test.v, extract a `v.util.diff` module, cleanup 2021-06-22 18:52:34 +03:00
Delyan Angelov dd6591b2f5
ci: fix `[if xyz ?]` usages 2021-06-22 10:46:43 +03:00
Alexander Medvednikov ae12a0b8f1 fast: reduce delta from 20ms to 18 2021-06-21 03:50:31 +03:00
zakuro ce3681ee8f
v ast: eprintln and exit instead of panic on invalid file errors (#10526) 2021-06-20 13:12:08 +03:00
shadowninja55 984551227b
doc: allow pressing / to focus search bar (#10522)
* type / to focus search; rename unused variables

* use ev.preventDefault() instead of setTimeout()

* delete doc.js_
2021-06-20 05:16:50 +03:00
Delyan Angelov 21fe91e508
v watch: increase the default restart timeout, when vwatch.v is compiled with -gc boehm 2021-06-19 22:08:23 +03:00
Ryan Roden-Corrent f0ad0b024e
v init: create a .gitignore in existing git repo if it does not exist yet (#10488) 2021-06-19 21:36:12 +03:00
Delyan Angelov 3b5a37628f
v watch: allow customising the auto-restart timeout for the workers with an env variable VWATCH_TIMEOUT 2021-06-19 16:51:40 +03:00
Delyan Angelov d56ae2d508
v.fmt: keep comments after struct embeds 2021-06-18 18:42:05 +03:00
Delyan Angelov de384f1cc8
strconv: vfmt everything 2021-06-18 17:59:56 +03:00
Delyan Angelov 9f6ddb4c21
v.fmt: add an independent Comment.is_inline flag. Use it for fixing `[ .. //x ]` => `[ .. //x, ]` 2021-06-18 15:52:31 +03:00
yuyi 2298063129
checker: fix nested if smartcast selector exprs (fix #10372 #10379) (#10502) 2021-06-18 14:49:15 +03:00
Delyan Angelov 39e7290416
v: support for `[if expr]`, part 2 (old `[if ident]` is not yet deprecated) 2021-06-17 18:55:20 +03:00