Commit Graph

1292 Commits (52f1c615a6785295da22fce91b61cac23a809d64)

Author SHA1 Message Date
Delyan Angelov 3afbb9e90a
all: split all backends into cmd/tools/builders (#12811) 2021-12-12 22:10:43 +03:00
yuyi f407d6de02
ast, checker, cgen: fix generics multiple type comptime call (fix #12777) (#12806) 2021-12-12 19:42:40 +02:00
Delyan Angelov bf835d47d8
tools: fix `v build-examples` on windows 2021-12-12 01:20:21 +02:00
Delyan Angelov 9b7a50b1a2
v: split the interpreter to cmd/tools/vinterpret.v 2021-12-12 00:06:44 +02:00
Delyan Angelov 23be53e2de
tools: build `examples/viewer` as a project folder 2021-12-11 23:20:08 +02:00
Subhomoy Haldar f0969698e2
cmd: add v bump (#12798) 2021-12-11 22:17:01 +02:00
Thomas Mangin 0d0d7323bb
transformer: provide direct_memory_access to arrays when safe (#12724) 2021-12-11 21:55:46 +02:00
Larpon ea1f398f90
ci: add `gfx_ci` utilizing `vgret` (#12785) 2021-12-11 10:30:06 +03:00
Larpon dbe67c688f
tools: add a `v gret` command to aid detecting visual regressions in `gg` based apps (#12775) 2021-12-09 21:31:55 +02:00
Delyan Angelov 0021fbbaa9
gg: support `VGG_STOP_AT_FRAME=120 VGG_SCREENSHOT_FOLDER=. VGG_SCREENSHOT_FRAMES=10,20,30 ./v -d gg_record run examples/gg/bezier_anim.v` (#12767) 2021-12-08 22:38:33 +02:00
Larpon cd96f980cc
v complete: add recent additions to cmd/tools, sort list (#12762) 2021-12-08 22:27:07 +02:00
crthpl 2fbf7fea75
all: initial interpreter code (#12605) 2021-12-08 11:09:10 +03:00
Delyan Angelov 7bbc70820a
tools: make `v test vlib` and `v test-self` skip _test.js.v files, when `node` is not installed 2021-12-07 21:31:29 +02:00
Delyan Angelov 6f5d952d8f
tools: implement `v ast -t file.v` (terse mode) (#12734) 2021-12-06 09:50:44 +02:00
lydiandy 3b7e7c9c46
tools: update vast to latest V (#12733) 2021-12-05 19:45:51 +02:00
Taillook 7d1dec5b44
sync: add sync.ManyTimes (#12729) 2021-12-05 19:44:25 +02:00
Taillook 0c713f6edc
sync.once: add Once (#12722) 2021-12-05 18:56:03 +02:00
playX 105d7fcf75
js: support JS.await (#12726) 2021-12-05 13:33:53 +02:00
Delyan Angelov 229d2fb667
v.util.timers: improve tracing by supporting `-d trace_timers_creation` 2021-12-05 11:55:41 +02:00
Leo Developer ace63594bf
all: support `$embed_file('embed.vv', .zlib)` (#12654) 2021-12-04 19:43:19 +02:00
yuyi 0cb4557a8d
ast, checker, cgen: fix nested struct embed method call (#12714) 2021-12-04 14:51:42 +02:00
yuyi 2d43fdb42a
ast, checker, cgen: fix nested struct embed error (fix #12659) (#12712) 2021-12-04 11:19:19 +03:00
Ulises Jeremias Cornejo Fandos f7926ec9a4
vlib/context: add onecontext as submodule (#12549) 2021-12-02 11:15:07 +02:00
Thomas Mangin 5e1cd13e39
v help: add build-c help information on how to use brew for libgc (#12633) 2021-11-30 19:39:27 +02:00
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