Commit Graph

1342 Commits (c7a619d16e8e7e4facddeace7222fcaba9919d53)

Author SHA1 Message Date
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
Andreas Heissenberger 0918c130ee
tools: fix more strange edge cases for markdown links in `v check-md` (#10486)
* fix support for numbers in urls

* fix valid github link id creation
2021-06-17 12:53:25 +03:00
Andreas Heissenberger 7b52dbfdf8
tools: fix support for numbers in urls in `v check-md` (#10483) 2021-06-16 19:58:32 +03:00
Ryan Roden-Corrent 30fac1f877
toosl: fix `v init` - terminate newly created files with newlines, add a test (#10480)
* vcreate: Add test for `v init`.

* vcreate: Init git properly with no dir arg.

`v init` would fail to create a .gitignore file. When not providing a
dir arg, passing "" to create_git_repo would result in:

```
V panic: failed to create gitignore: failed to open file "/.gitignore"
```

* vcreate: Terminate files with newline.

Fixes #10478.
2021-06-16 19:57:51 +03:00
Delyan Angelov af60eba5e6
tools: cleanup generated executables by `v test-all` 2021-06-15 14:28:46 +03:00
kac- 8d4c9823ba
tools,clipboard: use lowercase library names for `-luser32`etc, allowing linux->windows cross compilation of ui programs (#10455) 2021-06-14 15:42:56 +03:00
Andreas Heissenberger 7983495c57
tools: improve `v check-md` by checking for broken TOC headline links (#10417) 2021-06-14 13:12:02 +03:00
Delyan Angelov 90d04b0ce6
ci: skip udp_test.v and tcp_test.v on windows-tcc for now 2021-06-14 13:10:20 +03:00
Delyan Angelov dc1c26a2c2
ci: add back vlib/net/http/cookie_test.v as an exception in vtest-cleancode.v 2021-06-14 10:20:58 +03:00
Delyan Angelov d7d9305d96
net: vfmt everything 2021-06-14 10:08:41 +03:00
Emily Hudson 535dcac8fa
net: ipv6 support, merge unix+ip;[pack:x] attribute (#9904) 2021-06-13 23:53:38 +03:00
Uwe Krüger 2ac39d9112
all: new function `isreftype(T)` to know if `T` contains pointers (#10438) 2021-06-13 06:26:13 +03:00
Delyan Angelov bdd1a13230
tools: fix workdir for fast.v 2021-06-12 18:28:54 +03:00
Alexander Medvednikov 3f745605a2 fast: disable cache refresh for now 2021-06-12 17:51:58 +03:00
shadowninja55 85e9300a78
v help: add all tool commands to `v help <command>` (#10419) 2021-06-12 15:10:30 +03:00
Andreas Heissenberger 96c8d147b2
v.gen.js: add source map creation support (inline only, no src) (#10384) 2021-06-10 08:33:46 +03:00
lydiandy 7c2265e00a
tools: vast fix and clean code (#10381) 2021-06-07 21:42:09 +03:00
Delyan Angelov 01a8d3f8a1 tests: skip building psql/customer.v on macos (requires postgres) 2021-06-07 18:23:18 +03:00
Delyan Angelov 007ba5178e
v: add more timing points 2021-06-06 12:23:00 +03:00
Delyan Angelov 27f3737c5a
tools: cleanup the fast.v output 2021-06-06 09:52:29 +03:00
Delyan Angelov 43acb5a3ca
tools: make fast.v more robust against V module lookup bugs 2021-06-06 09:46:44 +03:00
Miccah c2981de4d5
http: add server.v and organize HTTP request and response code (#10355) 2021-06-06 00:43:14 +03:00
Delyan Angelov e54af19b25
examples: fix -cstrict compilation of c_interop_wkhtmltopdf.v 2021-06-05 10:03:57 +03:00
pancake 89d2f508cc
tools: fix `v symlink`, `uname -o` doesn't exist on macOS (#10303) 2021-06-03 01:22:14 +03:00
Delyan Angelov b28def7c11
tests: add vlib/v/tests/failing_tests_test.v, support `testdata` in `v test-self` too 2021-06-03 00:32:09 +03:00
Delyan Angelov 0254a1ac76
tests: ignore `testdata` folders in `v test .` too 2021-06-02 21:50:31 +03:00
Delyan Angelov bf623e191f
tests: ignore `testdata` folders while scanning for tests and .v files 2021-06-02 21:19:03 +03:00
StunxFS 04642211b4
v.help: remove duplicate line (#10326) 2021-06-02 20:34:18 +03:00
zakuro 3e89b60784
vast: accept .vv file (#10305) 2021-06-02 16:10:15 +03:00
lydiandy 67518f946b
cmd/tools/vast: update DeferStmt (#10291) 2021-05-31 22:49:16 +03:00
Delyan Angelov 2376b343ba
tests: always use / for paths shown in tests 2021-05-31 15:56:36 +03:00
Delyan Angelov eac1e25c5d
strings: simplify Builder (#10263) 2021-05-31 14:21:06 +03:00
lydiandy 43acda083a
cmd/tools/vast: add comments and cleanup code (#10246) 2021-05-29 17:05:05 +03:00
Delyan Angelov 7287ecd6c7
ci: skip too slow tests in any sanitize mode, use VTEST_RUN_FSANITIZE_TOO_SLOW to override 2021-05-29 12:15:10 +03:00
Delyan Angelov bb6907473b
ci: add the slowest tests in skip_with_fsanitize_memory 2021-05-29 11:38:53 +03:00
Lukas Neubert ddcc22a778
fmt: fix removal of selective imported map key type (#10235) 2021-05-28 22:29:03 +03:00
Lukas Neubert 6b683d31ac
v.parser: support imported enums as map keys (#10234) 2021-05-28 20:09:03 +03:00
lydiandy e09f0234ea
tools: add `v ast file.v` (#10236) 2021-05-28 19:54:44 +03:00
Delyan Angelov 39de06c200
v.pref: cleanup V options, support the documented -output and -backend 2021-05-28 09:07:06 +03:00
Anton Zavodchikov 9ee1d8c848
doc: decrease letter count for search to 2 (#10214) 2021-05-27 10:17:25 +03:00
Delyan Angelov 6c40781d84
ci: vfmt cmd/tools/fast/fast.v 2021-05-26 09:49:22 +03:00
Alexander Medvednikov 9ea7eda9c0 tools/fast: -usecache for hello world 2021-05-26 09:33:42 +03:00
Enzo 0d25106b4d
cmd/tools/vpm: improve v show (#10198) 2021-05-25 14:30:48 +03:00
Pranav Baburaj da88235bdc
vpm: addd a show command (#10186) 2021-05-24 15:17:57 +03:00
Alexander Medvednikov db848ed314 tools/fast: wipe cache before measuring 2021-05-24 12:12:29 +03:00
penguindark d8d05e0106
all: new string interpolation in pure V (#10181) 2021-05-24 05:20:45 +03:00
Lukas Neubert 79b97fa361
fmt: keep names of parameters in anonymus function (#10173) 2021-05-23 05:54:39 +03:00
pancake efa07cbcbf
native: initial support for linux-arm64 (hello world only for now) (#10176) 2021-05-23 05:54:28 +03:00
Alexander Medvednikov c04fc7bfc2 tools/fast: disable usecache for now 2021-05-22 07:20:48 +03:00
yuyi 293c6646d0
vtest-cleancode: do not skip generics_return_generics_struct_test.v anymore (#10163) 2021-05-21 17:20:52 +03:00
Delyan Angelov dd0a97541c
tests: use term.header_left, and a more compact output layout 2021-05-20 11:25:07 +03:00
Delyan Angelov 25ca1dd276
v test-all: test `-autofree` and `-prealloc` on V locally too 2021-05-20 10:07:23 +03:00
yuyi de080ba149
vfmt: cleanup vtest-cleancode (#10137) 2021-05-19 21:23:25 +03:00
Delyan Angelov 7a4ec9f60a
tools: add --before and --after options to `v watch` 2021-05-16 17:50:16 +03:00
Delyan Angelov 252249a348
tools: add a --silent option to `v watch` 2021-05-16 17:50:16 +03:00
Alexander Medvednikov e657cb2cd2 tools/fast: use -usecache 2021-05-15 05:52:06 +03:00
Delyan Angelov d11cd50773
ci: skip vweb_app_test.v except in the ubuntu-tcc job 2021-05-11 17:47:43 +03:00
Delyan Angelov 6f2c18f1c7
ci: fix `v build-tools` 2021-05-11 11:08:46 +03:00
Alexander Medvednikov dc034d9b16 vweb: make thread safe; checker: `$if T is Interface {` 2021-05-11 09:30:18 +03:00
Delyan Angelov 4728d102d9
os: add Process.finalise() and Process.free() methods to cleanup pipe descriptors 2021-05-09 21:50:47 +03:00
Delyan Angelov f85955ef67
tools/fast: use a common set of options for all measurement commands 2021-05-09 15:14:28 +03:00
Alexander Medvednikov 6a54f3a84d tools/fast: vfmt fast.v 2021-05-09 04:37:22 +03:00
Alexander Medvednikov e040806c36 tools/fast: fix -skip-unused 2021-05-09 03:50:28 +03:00
Alexander Medvednikov bdc3f76f68 tools/fast: use -skip-unused 2021-05-09 03:23:49 +03:00
Delyan Angelov 7db6d602de
tools: vfmt math_test.v and remove it from the exceptions in vtest-cleancode.v 2021-05-08 14:46:06 +03:00
Delyan Angelov 8a380f4699
tools: make `v test-cleancode` test everything by default (#10050) 2021-05-08 13:32:29 +03:00
zakuro b34b56ee4e
vbug: use readline to read expected result (#10037) 2021-05-07 19:31:43 +03:00
Uwe Krüger d26ac5692e
all: various fixes for [heap]/auto-heap handling (#10033) 2021-05-07 15:58:48 +03:00
Delyan Angelov 5b4eef8010
ci: bump up array capacities in repeat.v (workaround for segfaulting code-formatting-perf-regressions job) 2021-05-07 14:40:52 +03:00
Delyan Angelov 43cf3542ac
tools: fix a cmd/tools/repeat.v segfault 2021-05-06 21:46:59 +03:00
Alexander Medvednikov fc801fd563 tools/fast: use prealloc 2021-05-05 22:02:26 +03:00
Delyan Angelov 7288f12847
v help: add `v help watch`, rename -watch in `v help` too 2021-05-05 21:38:41 +03:00
Lukas Neubert 6745a7d725
vet: allow vetting of vsh files (#9997) 2021-05-04 18:25:56 +03:00
Louis Schmieder b8e070b2a1
orm: fix multi substructs (#9941) 2021-05-04 12:35:18 +03:00
Alexander Medvednikov e949d4b26c tools/fast: add "V lines" and "V lines/s" 2021-04-30 15:31:50 +03:00
pancake 5152cd4a62
v help: add a `v help build-native` section (#9906) 2021-04-29 09:47:11 +03:00
Lukas Neubert e711e8634e
fmt: prevent rare code corruption with array pre comments (#9908) 2021-04-29 08:28:44 +03:00
Lukas Neubert dee733aae4
fmt: reset const field align after multi line exprs (#9916) 2021-04-29 02:17:37 +03:00
Lukas Neubert a065d014a2
fmt: keep constant sizes in struct field fixed array types (#9910) 2021-04-28 22:11:15 +03:00
Delyan Angelov 626517f5f7
tools: turn `v -watch` into a `v watch` sub-command, so that it can have its own options 2021-04-28 12:29:50 +03:00
Delyan Angelov e4a2d1b239
v -watch: support for VWATCH_IGNORE_EXTENSIONS 2021-04-28 09:22:37 +03:00
Delyan Angelov c44ec9cd97
v -watch: support for VWATCH_ADD_FILES 2021-04-28 09:12:07 +03:00
Delyan Angelov a0963f4d74
v -watch: support for VWATCH_CLEAR_TERMINAL 2021-04-28 09:12:06 +03:00
pancake 6750ed254f x64: rename to `native` to not conflict with the x64 comptime variable 2021-04-27 12:24:58 +03:00
Don Park aebb551e93
cgen: do full struct initialisation for V structs, fixes invalid data from `map[string]Struct{}['unknown']` (#9878) 2021-04-27 08:18:48 +03:00
Delyan Angelov cafe382424
vweb: update references to old .init_once() and .init() methods to .init_server() and .before_request() 2021-04-26 19:38:13 +03:00
Delyan Angelov bb4f0ed4a9
tools: fix vwatch.v compilation 2021-04-25 09:31:01 +03:00
Delyan Angelov 2f29e7903c
tests: cleanup obsolete skips in common.v 2021-04-23 15:31:04 +03:00
Delyan Angelov ba512a6a8e
v help: describe CFLAGS and LDFLAGS support in `v help build-c` 2021-04-22 18:14:33 +03:00
Delyan Angelov 6e589e2ae8
vdoc: fix panic on running `v doc -all -m vlib/ -f html -inline-assets` two times in a row 2021-04-21 14:33:41 +03:00
Delyan Angelov bd539b6427
vfmt: fix string interpolation formatting with multiple ',",\' and \" . 2021-04-20 20:26:06 +03:00
Lukas Neubert 0b0a5de9e5
vet: hide skipped file messages behind verbose flag (#9823) 2021-04-20 17:20:50 +03:00
Lukas Neubert 16e79bc3ca
tools: format most examples and tutorials, add them to `v test-cleancode` (#9826) 2021-04-20 17:16:35 +03:00
Lukas Neubert 4a1f75c964
fmt: split infix wrapping into smaller functions and fix a trailing space bug (#9806)
* change recursive fn calls to reduce write operations

* format files and test

* Update vtest-cleancode.v

* fix test
2021-04-19 21:56:39 +03:00
Enzo c174bfa52f
tools: add a `v bug file.v` tool to automatically report bugs on GitHub (#9746) 2021-04-19 21:40:54 +03:00
Lukas Neubert 4b230d16b3
vfmt: only print non-empty diffs (#9803) 2021-04-19 18:55:55 +03:00
spaceface 73352583e7
ci: fix all `-cstrict` warnings with gcc and clang (#9792) 2021-04-19 15:38:48 +03:00
Delyan Angelov eaf930aa8b
tools: simplify gen_vc.v 2021-04-18 08:55:27 +03:00
crthpl 0a1d0e062d
freestanding: small fixes (#9760) 2021-04-17 02:38:41 +03:00
Delyan Angelov c7752ce8d3
v: add an -assert aborts/backtraces option to ease debugging 2021-04-15 20:26:51 +03:00
Delyan Angelov d90be54850
v: add -cstrict for optionally turning on all ccoptions.wargs 2021-04-15 14:56:45 +03:00
Delyan Angelov 5ae3b81337
cmd/tools/fast/fast.v: html encode < > in commit messages 2021-04-15 13:58:14 +03:00
Delyan Angelov b8e9f085eb
vfmt: cleanup StringInterLiteral.get_fspec_braces/1 2021-04-15 09:46:05 +03:00
Delyan Angelov f0dd2bbf6e
tests: skip deadline_test.v everywhere 2021-04-15 09:28:40 +03:00
Delyan Angelov f1549b3ee7
vfmt: make ${} more robust; require it for every interpolation that uses '...' or "..." 2021-04-15 09:28:40 +03:00
Alexander Medvednikov a18f85c8cd vweb: init_once() => init_server(); init() => before_request() 2021-04-15 06:27:24 +03:00
ka-weihe 25a9d30a70
channels: fix C warnings (#9732) 2021-04-15 01:44:39 +02:00
Delyan Angelov 56e15741b0
ci: tag deadline_test.v in the skip_with_fsanitize_memory and skip_on_windows lists 2021-04-14 20:06:05 +03:00
Delyan Angelov 3e297bced4
ci: remove some tests from skip_with_werror in `v test-self` 2021-04-14 12:47:24 +03:00
Delyan Angelov 365f9fcfc5
v.v: cleanup deprecated commands test-fixed, test-compiler-full, test-compiler 2021-04-14 09:59:52 +03:00
crthpl 14434cc86a
all: bare metal support (fix `-freestanding`) (#9624) 2021-04-14 07:50:50 +02:00
Uwe Krüger 10bf974cda
all: gc: provide optimized mode (#9716) 2021-04-14 00:40:26 +02:00
Ulises Jeremias Cornejo Fandos 909c9c7ee7
context: small refactor to always use Context type instead of multiple types (#9705) 2021-04-13 07:04:13 +03:00
Ulises Jeremias Cornejo Fandos 07a6f4e445
context: add a new `context` module, based on Golang's context, intended to be used in webservers (#9563) 2021-04-12 19:32:51 +03:00
Lukas Neubert b2c16ced57
parser: filter out vet space indent errors inside StringInterLiterals (#9695) 2021-04-12 16:03:22 +03:00
Lukas Neubert 9427c5f526
vdoc: fix output folder creation (#9699) 2021-04-12 15:59:40 +03:00
Delyan Angelov 19e4f5ec73
tools: implement progres bar for `v check-md .` 2021-04-12 15:51:28 +03:00
Delyan Angelov ee42dd914c
tools: make `v check-md` more strict about unformatted code samples in `failcompile` sections. 2021-04-12 15:11:57 +03:00
Delyan Angelov 85e9cf1bd3
tests: add vlib/x/json2 to vtest-cleancode.v 2021-04-11 11:34:08 +03:00
penguindark cca06fce90
encoding.utf8: remove const unicode_con_table_up_to_low table (#9672) 2021-04-11 10:28:19 +03:00
Louis Schmieder 64391efa4d
orm: add mysql support (#9630)
* add mysql to orm

* fix got to big packet error

* format sql.v

* format example

* custom sql types

* add mysql table cration

* add documentation

* format sql.v

* fix markdown

* start implementing select_expr for mysql

* remove orm.c

* format sql.v

* finish mysql expr

* remove c

* remove unessecary files

* change to c implementation

* remove c

* added str interpolation for idents

* fix string insert

* fix compilation problems

* fix gitly compilation

* fix typing mistake

* add link to orm docs
2021-04-10 17:38:27 +03:00
Lukas Neubert 46e7e27ba3
v vet: give an error for trailing whitespace (#9574) 2021-04-09 13:22:14 +03:00
Uwe Krüger 84fa1ae444
boehm-gc: support a `[keep_args_alive]` tag for C functions (#9641) 2021-04-09 13:13:49 +03:00
Ali Chraghi 9881ff8448
tests: fix option_print_errors_test.v (#9616) 2021-04-08 08:46:08 +03:00
yuyi 4f6dde4ac2
vself: handle missing v_old (#9637) 2021-04-08 06:27:56 +02:00
Lukas Neubert 790961e73a
fmt: remove duplicate worker error check (#9631) 2021-04-08 02:11:56 +02:00
Delyan Angelov cc80ee0ab4
tools: improve the default performance/behaviour of oldv 2021-04-07 12:36:14 +03:00
Delyan Angelov 9bb3a5b3a3
tools: update oldv to be faster for the most common cases 2021-04-06 11:43:53 +03:00
Delyan Angelov aa5f733f01 tools: add -cflags -Werror step to `v test-all` 2021-04-05 23:52:39 +03:00
Delyan Angelov 10619d098c
ci: fix a race in vlib/v/compiler_errors_test.v execution on m1 2021-04-05 22:57:59 +03:00
Delyan Angelov dd31a1de9f
ci: fix the rest of `v test-cleancode` 5. Describe the problems of the SKIPed files 2021-04-05 21:47:11 +03:00
Delyan Angelov d11fb8497a
ci: fix some of `v test-cleancode` 3 2021-04-05 21:21:46 +03:00
Delyan Angelov 92f40f9642
tools: fix `v symlink` on windows 2021-04-05 16:06:03 +03:00
Delyan Angelov 3ea9868d0e
v -watch: rerun compilation after `v self` too 2021-04-05 11:04:31 +03:00
Alexander Medvednikov ed37512ea9 ci: run wkhtmltopdf only on linux again 2021-04-05 07:55:32 +03:00
Delyan Angelov 5e394f911f
ci: fix byteptr cast in cmd/tools/bench/wyhash.v 2021-04-04 23:33:35 +03:00
Delyan Angelov c698fa1a58
all: support `v -watch run` (#9577) 2021-04-04 16:05:06 +02:00
Lukas Neubert 0eb59cf2bd
fmt: prevent possible trailing whitespace in wrapped infixes (#9573) 2021-04-03 18:30:25 +02:00
Lukas Neubert 646d46b4dc
vet: turn warnings into errors with -W flag (#9575) 2021-04-03 18:30:15 +02:00
Lukas Neubert 094441c863
vet: remove false positive space indent errors inside strings (#9568) 2021-04-03 12:16:49 +02:00
Delyan Angelov 5229428d91
tools: add a separate `scan` column for fast.vlang.io too 2021-04-02 21:13:34 +03:00
Delyan Angelov d7331f981b
tools: fix parsing of new -show-timings output format in fast.vlang.io 2021-04-02 20:23:32 +03:00
Lukas Neubert e438b158a6
vet: remove false positive space indentation error inside block comments (#9565) 2021-04-02 16:26:53 +02:00
Alexander Medvednikov 7385f8e56b all: a massive merge of ast and table modules 2021-04-02 01:57:09 +03:00
Uwe Krüger 97f43d6a97
gc: make generational mode of Boehm-GC available (#9514) 2021-03-30 09:36:22 +02:00
Lukas Neubert 4a10514081
tests: run vfmt over some of the tests in vlib/v/tests (#9455) 2021-03-27 19:29:57 +02:00
Swastik Baranwal 0e254e0329
vdoc: support -os and show docs according to the platform (#9474) 2021-03-27 09:50:06 +01:00
Delyan Angelov 52a14e8422
vpm: fix panic at the end of `v remove ui` 2021-03-26 11:37:54 +02:00
Bastian Buck 69dff4b384
os: make os module handle large files (#9439) 2021-03-26 07:51:55 +01:00
penguindark a2ef9967fe
examples: add .obj viewer as a sokol example (#9456) 2021-03-25 16:53:13 +01:00
Uwe Krüger 257eadd2e1
gc: add `-gc boehm_leak` for leak detection (#9464) 2021-03-25 16:52:33 +01:00
Lukas Neubert 8b7085e050
vvet: big cleanup (#9454) 2021-03-24 23:53:44 +02:00
Lukas Neubert 7664964c56
vfmt: format all of cmd/ and add it to `v test-cleancode` (#9418) 2021-03-24 23:37:10 +02:00
zakuro 6bc9ef7373
builtin: vfmt every .v file, except vlib/builtin/int_test.v (#9448) 2021-03-24 20:39:59 +02:00
Delyan Angelov 999b4a47c1
tools: cleanup check_os_api_parity.v 2021-03-24 13:04:05 +02:00
Delyan Angelov 9b78d7d21d
tools: check formatting of more modules with `v test-cleancode`, colorize `v vet` output 2021-03-24 12:39:39 +02:00
Delyan Angelov 0bde55f77e
tools: fix `v -prod cmd/tools/vdoctor.v` 2021-03-24 10:31:42 +02:00
ka-weihe f885c7cea9
tests: fix three tests with address errors (#9441) 2021-03-24 00:01:29 +02:00
Delyan Angelov 385cb4dd20
repeat.v: fixes for `./v -cg -cflags -fsanitize=undefined cmd/tools/repeat.v` 2021-03-23 22:13:47 +02:00
Delyan Angelov 8abfe2f5a2
cgen: -autofree fixes for []string{} having literals, comming from defailt string stuct field values 2021-03-23 18:54:37 +02:00
Delyan Angelov ae6420afc7
tools: fix `substring in s` usages, preventing `v -W build-tools` 2021-03-23 13:36:50 +02:00
Ned Palacios 1d42b4cf66
vdoc, v.doc: remove DocPos and use token.Position (#9429) 2021-03-23 09:07:09 +01:00
ka-weihe 801da20fd9
ci: test-self (V compiled with -fsanitize=memory) (#9423) 2021-03-22 23:05:48 +01:00
Delyan Angelov c76c69ec35
all: simplify `return if ...` constructs to make more code compatible with -autofree 2021-03-22 16:45:29 +02:00
Delyan Angelov 8810af76df
all: support `-gc boehm` on systems with libgc-dev installed (#9382) 2021-03-20 14:16:36 +01:00
Delyan Angelov b0e225ac2d
dl: fix `v -cflags "-Werror" use_test.v` 2021-03-19 23:27:14 +02:00
Delyan Angelov 644fdd0248
ci: cleanup eprintlns in vbuild-tools.v 2021-03-19 16:26:07 +02:00
Delyan Angelov 9587f9f875
fix `v build-tools` path handling on windows (affected tcc) 2021-03-19 16:24:41 +02:00
Lukas Neubert 82c4daa4b7
fmt: fail keep test when bin2v_keep preparation step fails (#9361) 2021-03-19 13:13:03 +02:00
zakuro dad5a5e774
v test-cleancode: add -fix flag (#9364) 2021-03-19 12:37:44 +02:00
Delyan Angelov 04095f4088
ci: fix failing `v -W build-tools` and `v -W build-examples`; run vfmt. 2021-03-19 09:49:26 +02:00
Delyan Angelov ea3d1405ee
ci: fix failing -Werror job with tcc 2021-03-19 09:34:41 +02:00
Swastik Baranwal f28e67d526
cmd/tools/v/vdoc: keep `_` sep in numeric literals and highlight modules properly (#9358) 2021-03-18 15:06:16 +02:00
Ned Palacios eccf707270
vdoc: improve error message for non-existing symbols (#9359) 2021-03-18 15:04:53 +02:00
Swastik Baranwal 2e84773ef1
cmd/tools/vdoc: highlight nested string quotes properly (#9341) 2021-03-17 09:50:22 +02:00
crthpl fafb035fb5
all: reimplement inline assembly (#8645) 2021-03-17 01:43:17 +01:00
Delyan Angelov 6814c975e5
vself, vup: update to use err.msg instead of err 2021-03-16 21:25:35 +02:00
Delyan Angelov 1753445a64
builtin: make panics more IDE friendly 2021-03-16 20:50:11 +02:00
Lukas Neubert 39a9beb9e0
vet: add -W flag and detailed help (#9331) 2021-03-16 19:49:06 +02:00
Delyan Angelov 98c611d5d9
ci: skip crypto_rand_read_test.v on the tests-sanitize-memory-clang job 2021-03-16 17:10:03 +02:00
Delyan Angelov 0c620a78bf
vdoc: highlight keywords in bright_blue 2021-03-16 12:24:34 +02:00
Swastik Baranwal 0b0e96a8cd
vdoc: improve syntax highlighting (#9323) 2021-03-16 12:05:36 +02:00
Swastik Baranwal 26138f98af
v doc: implement color highlighting for the stdout format, enable it by default (#9312) 2021-03-15 13:21:19 +02:00
Alexander Medvednikov ef10c60270 tools/fast: fix freebsd path 2021-03-14 21:34:51 +03:00
Alexander Medvednikov 826809fae6 tools/fast: disable 1m.v for now 2021-03-14 21:20:32 +03:00
Alexander Medvednikov 72dea2b7b7 tools/fast: use tcc since it's the default 2021-03-14 20:49:23 +03:00
Delyan Angelov fbb9f316f5
v build-tools: improve error reporting on moving back executables 2021-03-14 18:40:00 +02:00
Delyan Angelov ddbe57e00a
v test-cleancode: ensure more .v files are kept vmft-ed 2021-03-14 12:17:31 +02:00
spaceface e9797c618a
all: implement error interfaces (#9291) 2021-03-13 18:13:50 +01:00
StunxFS e09a8a47b0
vcreate: minor tweaks (#9275) 2021-03-13 08:43:12 +02:00
Major Taylor 98a5e9f369
v help: unify and clarify some 'help' documents (#9276) 2021-03-13 08:37:12 +02:00
Ned Palacios 62458e3553
vdoc: remove local mode (#9282) 2021-03-13 07:49:03 +02:00
Lukas Neubert 21bbc24c49
v remove: use correct command name in error when no args are given (#9273) 2021-03-12 21:32:34 +02:00
StunxFS cd087515fb
vcreate: use underscores instead of spaces for names (#9257) 2021-03-12 16:09:43 +01:00
fossdd 27cb0d97cc
v.v: fix exit codes and add stderr (#9247) 2021-03-11 14:52:13 +02:00
Lukas Neubert 141a6db16b
vfmt: print worker execution errors with -debug (#9238) 2021-03-10 20:21:39 +02:00
zakuro 0abb38472b
vcheck-md: minor cleanup (#9229) 2021-03-10 17:46:07 +02:00
Bartimus 3edcb7e601
vsymlink.v: update registry calls on windows (#9213) 2021-03-09 16:16:42 +02:00
Ned Palacios 114a7db6e5
vdoc: fix symbol filtering (#9210) 2021-03-09 13:05:50 +02:00
Delyan Angelov a9358e4948
tools: fix panicing on a failing make in `v up`, or recompilation of vup.v 2021-03-08 23:58:07 +02:00
Delyan Angelov d7049ae2da
os: deprecate os.exec (returning ?os.Result), in favour of os.execute, which returns os.Result (#8974) 2021-03-08 20:52:13 +02:00
Patrick Hintermayer 8f0ede34ad
v doc: add available output formats (#9180) 2021-03-08 17:21:40 +02:00
Delyan Angelov 98a12fdc2e
ci: fix `v test-cleancode` 2021-03-07 19:15:47 +02:00
Patrick Hintermayer ba95995a51
v new: support setting version and license too (#9168) 2021-03-07 11:38:56 +02:00
zakuro 7a9d9f1e78
v new: accept name and description from argument (#9142) 2021-03-06 21:03:20 +02:00
Delyan Angelov 849cde245c
v: support dump(expr) (#9160) 2021-03-06 18:09:28 +01:00
pancake c65d65a3f5
v: use dash instead of lowerdash for -print-v-files (#9111) 2021-03-04 14:38:05 +02:00
yuyi 2870a5a63a
vrepl: fix array_filter (#9104) 2021-03-04 12:24:14 +02:00
Stanislav Ershov 76c8dea782
vcomplete: add powershell support (#9093) 2021-03-03 23:57:08 +01:00
Uwe Krüger dd475f4e37
checker/cgen: enable `IfGuardExpr` for `a[k]` and `<-ch` (#9065) 2021-03-03 10:10:38 +02:00
Swastik Baranwal b65ec6e867
cmd/repl: add functionality to use custom programs on the startup (#9055) 2021-03-03 07:53:05 +02:00
Delyan Angelov 31321b68ea
v: show help for -h, -help, and --help, in addition to `v help` 2021-03-02 12:22:10 +02:00
ka-weihe 83a77542e3
ci: update skipped tests (#9034) 2021-03-01 13:54:49 +01:00
Miccah d0fab60981
vweb: refactor routing logic (#9025) 2021-03-01 11:50:52 +01:00
spaceface b712af56fd
all: bring back `panic(err.msg)` -> `panic(err)` (#9022) 2021-03-01 00:18:14 +01:00
Uwe Krüger e937d6249c
cgen: fix various issues concerning optionals (#9021) 2021-02-28 23:21:03 +01:00
spaceface d63b7bc35a
all: update repo to use the new error handling syntax (#8950) 2021-02-28 23:20:21 +03:00
spaceface b9a381f101
all: migrate to the new Option (p. 1) (#8924) 2021-02-28 22:24:29 +03:00
Miccah 7e08e84bc1
vweb: refactor HTTP request parsing (#8874) 2021-02-27 23:18:25 +01:00
Miccah 2f9687d29b
net: add HTTP Header struct and methods (#8991) 2021-02-27 22:54:27 +01:00
Alexander Medvednikov 3a2d696fac time: time.wait() => time.sleep() 2021-02-27 20:41:06 +03:00
Ben-Fields 81cf6f7ea2
tools: fix shortcut creation & registry access in `v symlink` on windows (#8994) 2021-02-27 09:39:36 +02:00
Nick Treleaven 23f231ee61
builtin: tag array methods unsafe: *_many, grow_len, pointers (#8983) 2021-02-26 22:55:09 +01:00
Delyan Angelov 3362d7ecbb
vpm: make the 404 in text error more precise (till https://vpm.vlang.io/ is fixed properly) 2021-02-25 09:05:18 +02:00
Ben-Fields 63ed3c0d41
tools: fix shortcut creation error in `v symlink` on windows (#8935) 2021-02-24 14:40:17 +02:00
Delyan Angelov 977a625a45
tools: support `v -prod up` 2021-02-23 10:05:59 +02:00
Delyan Angelov 7c9d280233
v install: fix `does not exist`, when the response contained a 404 text 2021-02-23 08:58:26 +02:00