Commit Graph

875 Commits (dcab79146b5a6a8092c5b9a730e331bb6222ea81)

Author SHA1 Message Date
Uwe Krüger 0520b755f4
checker/cgen: support `print*()`, `.str()` and '$x' for `shared` (#8771) 2021-02-16 12:40:13 +01:00
Nick Treleaven 4a0367a63c
vlib: add [unsafe] tag to more functions: tos, string_from_wide, strings.Builder: write_bytes, free (#8766) 2021-02-15 17:15:52 +02:00
penguindark 325aef6d41
gg: add gg.m4, use it in the sokol GLSL examples (#8755) 2021-02-15 15:40:28 +02:00
Ned Palacios ebb5305b27
vdoc: fix markdown toc link rendering (#8714) 2021-02-13 09:04:47 +02:00
Uwe Krüger 40066a5daa
checker: obey [ref_only] tag, allow embedding in other ref struct (#8707) 2021-02-13 00:47:37 +01:00
bettafish04 9b4f2edbfa
net: move unix socket code to net.unix and skip net/unix/unix_test.v … (#8681) 2021-02-11 18:51:12 +02:00
Delyan Angelov f8db44bb15
ci: update reference to pool_test.v in skip_with_werror in `v test-self` 2021-02-11 13:12:00 +02:00
Delyan Angelov 578de634fe
sync: move pool related code to `sync.pool`, cleanup, add a README.md 2021-02-11 10:55:23 +02:00
bettafish04 d4f6488afd
net: add better unix socket support (#8651) 2021-02-11 01:24:15 +01:00
Ruofan XU 8b1337029f
ci: add build-examples task to tcc-windows CI (#8653) 2021-02-11 01:23:03 +01:00
Nick Treleaven 9e751f72c4
doc, fmt: use `map{key: value}` syntax for map literals (#8623) 2021-02-08 16:57:42 +02:00
Delyan Angelov 03d5bfbc95
repl: use os.temp_dir() for the temporary .noprefix.vrepl.v files 2021-02-08 09:44:04 +02:00
Lukas Neubert 473cd1d416
fmt: single line ternary return (#8605) 2021-02-08 00:28:46 +01:00
Uwe Krüger 118ca1240e
all: allow `shared` element types for `struct` and arrays (#8631) 2021-02-08 00:28:29 +01:00
Lukas Neubert 7f4c582f1a
fmt: unwrap long infix exprs inside parenthesis if necessary (#8609) 2021-02-07 23:10:39 +01:00
ka-weihe 367dbc7707
ci: add tests with -Werror (#8630) 2021-02-07 23:10:01 +01:00
Lukas Neubert 46f8e68bec
ci: skip process/command example on windows (#8617) 2021-02-07 13:46:22 +02:00
Alexander Medvednikov f589a70874 examples: make a process example compile with -prod 2021-02-07 05:23:45 +01:00
Alexander Medvednikov 68b4051a6e tools/fast: simplify logic now that it's run on each commit 2021-02-07 05:11:48 +01:00
Alexander Medvednikov a81ee0e94e tools/fast: measure v.c size and parse/check/cgen steps 2021-02-07 04:48:54 +01:00
Alexander Medvednikov 32cd2846f5 tools/fast: run the job every minute 2021-02-07 04:01:02 +01:00
Alexander Medvednikov d284918554 tools/fast: push changes to gh pages 2021-02-07 03:35:29 +01:00
Alexander Medvednikov 26121d5ae7 tools/fast: cron job to check for new commits 2021-02-06 22:28:42 +01:00
Lukas Neubert 59c1c77bfe
check-md: fix missing default_command when nofmt was set (#8591) 2021-02-05 20:25:27 +02:00
Lukas Neubert 76ea3e7b41
tools/check-md: allow directories as args and deprecate -all flag (#8582) 2021-02-05 16:46:20 +01:00
Louis Schmieder 97c0ef3505
orm: struct field support (#8517) 2021-02-04 20:28:33 +01:00
Delyan Angelov 32cc95a340
test-cleancode: check some of the examples too 2021-02-04 17:34:59 +02:00
Delyan Angelov 3e4e0a35e3
vvet: fix silent exit when invoked on a single .v file. 2021-02-04 17:23:58 +02:00
Delyan Angelov 1e9ec6a126
vfmt: exit(1) after vfmt-ing a file with a syntax error 2021-02-04 16:00:14 +02:00
Lukas Neubert 3ef4885094
vfmt: enable colored warnings/errors (#8527) 2021-02-03 10:03:41 +02:00
Delyan Angelov 02bef1ae2b
vdoc: fix segfault on `v doc -m -f html vlib` 2021-02-02 17:38:32 +02:00
joe-conigliaro ffedbe4b81
cgen: move cgen from v.gen to v.gen.c (#8515) 2021-02-02 15:41:51 +01:00
Daniel Däschle d477e525bb
checker/gen: fix generic struct init (#8322) 2021-02-03 00:42:00 +11:00
Lukas Neubert 5aaeac79fa
ci: fix compilation (#8511) 2021-02-02 12:06:54 +02:00
Alexander Medvednikov 2c4674eb42 cgen: obfuscate functions 2021-02-02 09:14:41 +01:00
Larpon d25825df57
all: support compile time `$env('ENV_VAR')` (#8456) 2021-01-31 19:22:42 +02:00
Delyan Angelov 4f4e3e9b61
ci: fix failing windows tests (skip the websockets examples) 2021-01-31 18:37:45 +02:00
Delyan Angelov 89bf48e3ba
ci: fix `v -W build-examples` 2021-01-31 10:43:49 +02:00
Major Taylor dad68e00d5
vup: add a git installer for Windows, when git is not in path, or not installed at all (#8406) (#8421) 2021-01-30 12:53:57 +02:00
Julia Bogdan Filipchuk d26ac0f6cb
vfmt: add ability to use vfmt as a filter from stdin to stdout (#8432) 2021-01-30 12:38:54 +02:00
Delyan Angelov 8398e2f448
ci: fix -usecache for programs using thirdparty C libs 2021-01-29 19:44:33 +02:00
Delyan Angelov 4d180171ba
builder: implement `-dump-c-flags flags.txt` 2021-01-29 18:05:14 +02:00
Ned Palacios d7d069adc4
vdoc: set max-width to img; do not stretch to page container (#8410) 2021-01-29 14:49:06 +01:00
Alexander Medvednikov d86cb67eda checker: add a test for the single letter receiver 2021-01-28 11:13:51 +01:00
Delyan Angelov 102c54f620
tools: support for v self -debug, use os.mv_by_cp 2021-01-28 06:26:39 +02:00
Delyan Angelov a8f1824e51
vup: log potential backup errors, but do not stop 2021-01-28 00:48:47 +02:00
Delyan Angelov 924fd2bf2a
tools: improve the diagnostic messages from `v up` and `v self` even more 2021-01-28 00:45:38 +02:00
Delyan Angelov 242d7d0fc0
tools: improve error diagnostic for `v up` and `v self`. Make `v self` more robust. 2021-01-27 23:58:13 +02:00
Delyan Angelov e5a84719ca
all: require calling `optfn() ?` / `optfn() or {...}` for `fn optfn() ? {}` 2021-01-26 16:43:17 +02:00
Delyan Angelov dbaccd4272
vfmt: shorten `main.const_name` to just `const_name` 2021-01-25 20:57:33 +02:00
Delyan Angelov cb04e6dccc
tests: move is_nodejs_working() to jsgen_test.v 2021-01-25 18:46:28 +02:00
Delyan Angelov 9d1d35ebdc
tests: fix a test message index bug on `VTEST_SHOW_START=1` 2021-01-25 17:58:08 +02:00
Delyan Angelov 0a61149476
tests: implement `VTEST_SHOW_START=1 v test vlib/math` 2021-01-25 16:29:56 +02:00
Delyan Angelov 728344ff65
ci: fix `v test-cleancode` 2021-01-25 12:55:01 +02:00
Alexander Medvednikov 29d6e40f29 all: vfmt (new const rule) 2021-01-24 10:54:27 +01:00
Lukas Neubert 522eac200f
fmt: keep `arr << if x {} else {}` on a single line (#8289) 2021-01-24 08:02:35 +01:00
Delyan Angelov b04b8d438b
tools: print the offending markdown source line, for errors and warnings 2021-01-24 00:13:21 +02:00
Delyan Angelov ef6839286e
ci,tools: implement silent mode in `./v test-parser -S examples/cli.v` 2021-01-23 18:53:47 +02:00
yuyi 5ee3fecf60
checker: check for mut val in immutable obj (#8285) 2021-01-23 10:40:17 +01:00
Alexander Medvednikov d991712b3c gg: native rendering mode on macOS 2021-01-23 10:25:43 +01:00
Lukas Neubert 8b61891348
fmt: smarter if condition wrapping (#8201) 2021-01-23 10:33:22 +02:00
Larpon ee663364de
vet: simplify fn name identifying, add warning for incomplete documentation (#8227) 2021-01-21 12:46:50 +01:00
Delyan Angelov 927606dc39
tools: rename `v test-compiler-full` to `v test-self` 2021-01-19 10:41:51 +02:00
Lukas Neubert ac2c3847af
all: update copyright to 2019-2021 (#8029) 2021-01-18 13:20:06 +01:00
Delyan Angelov 17266ecb07
tools: support cmd/tools/.disable_autorecompilation in `v up` and `v self` too 2021-01-18 09:33:33 +02:00
Daniel Däschle b4a542c51c
vdoc: implement advanced search on mobile layout (#8176) 2021-01-18 06:04:59 +01:00
Lukas Neubert 16c9cbce7c
fmt: correctly increase f.line_len for write_indent (#8174) 2021-01-18 06:02:29 +01:00
Delyan Angelov fafd949770
tests: skip vlib/v/gen/js/jsgen_test.v when there is no `node --version` working 2021-01-17 19:21:18 +02:00
Delyan Angelov 3ee78dc961
term: add term.colorize/2, use it in the tests. Support ConEmuANSI = ON too. 2021-01-17 19:09:29 +02:00
Delyan Angelov 460f32baf2
tests: add `v test-all`, move `v test-fixed` to `v test-compiler-full` 2021-01-17 16:11:10 +02:00
Delyan Angelov 8571d9395b
preludes: move to vlib/v/preludes 2021-01-16 14:43:24 +02:00
Daniel Däschle 53941c4a0a
fmt: fix if cond break readability (#8132) 2021-01-16 02:12:17 +01:00
Delyan Angelov 30e96528b0
tests: improve error message on `v test file.v` 2021-01-13 21:52:05 +02:00
Delyan Angelov cf93be918f
docs: update debugging information 2021-01-13 12:50:35 +02:00
Daniel Däschle a22982d662
tests: colorize failing tests, improve layout (#8066) 2021-01-13 11:07:12 +02:00
yuyi 7458b699d0
fmt: change `[1,2,3]!!` to `[1,2,3]!` (#8081) 2021-01-13 08:32:17 +01:00
Delyan Angelov d4237aa7af
tools: cleanup the commit subject that gen_vc uses for the vc repository 2021-01-12 12:44:35 +02:00
Delyan Angelov 49ec2c86ae
oldv: match the v commit in the vc log by `--grep`, falling back to `--before=` 2021-01-12 12:44:34 +02:00
zakuro 33694665f0
fmt: align each contiguous field of struct. not the whole. (#7981) 2021-01-12 04:38:43 +01:00
Uwe Krüger 5f95dd54bd
builtin: rename `any_*` -> `*_literal` - 2. part (#8032) 2021-01-11 22:58:15 +01:00
yuyi a1c67232d0
checker: fix duplicate variable name (fix #265) (#7982) 2021-01-10 21:41:29 +01:00
penguindark c067cc0357
vlib: add a TTF font loader and render in `x.ttf` (#7995) 2021-01-10 20:14:41 +02:00
Larpon 93ad595ffb
vet: add suggestions for function documentation (#7890) 2021-01-10 18:48:39 +02:00
Delyan Angelov d0690fca1e
tools/check-md: implement -hide-warnings, use it to reduce noisiness of the output on the CI 2021-01-10 15:58:45 +02:00
Larpon 362c21de06
vdoc: remove http doc server (#7984) 2021-01-09 22:47:58 +01:00
Delyan Angelov aa37382e8d
tools: let `v fmt` use VTMP too, stabilise `v test-cleancode` 2021-01-09 20:41:15 +02:00
Delyan Angelov fb7a5ee3af
ci: fix warning for cmd/tools/vvet/vvet.v 2021-01-09 19:41:30 +02:00
Delyan Angelov ca83746884
tools: ensure that `v test-cleancode` is always run in the vroot folder 2021-01-09 19:25:50 +02:00
Larpon 8f315d226b
vvet: move to own subdir, prepare richer suggestions (#7989) 2021-01-09 16:11:49 +02:00
Larpon 78376a0250
vdoc: don't escape < and > in README, fixes #7951 (#7960) 2021-01-08 17:44:19 +01:00
Delyan Angelov 083dc23db8
gen: implement a `[manualfree]` tag, for functions, that want to do their own memory management 2021-01-08 16:22:27 +02:00
Larpon b299fb1e92
vdoc: heavy refactor, immutable config (#7945) 2021-01-08 12:25:22 +02:00
Lukas Neubert 2820139216
bin2v: replace hyphens for const names (#7937) 2021-01-07 21:37:36 +01:00
Lukas Neubert 6c013023fc
tools/check-md: minor cleanup (#7940) 2021-01-07 20:13:07 +01:00
Larpon 30a2f125ef
doc: add comment example support (#7924) 2021-01-06 19:43:43 +01:00
Lukas Neubert 5683af821e
bin2v: correct newlines in console output (#7925) 2021-01-06 19:19:48 +02:00
Tomas Hellström f9a873736e
x.websocket: server broadcast plus examples (#7922) 2021-01-06 15:43:54 +01:00
hazohelet a02de42450
vdoc: escape `<` and `>` before creating md (#7895) 2021-01-05 19:16:56 +01:00
yuyi 7135773975
vtest-fixed: remove debug message output (#7898) 2021-01-05 18:13:38 +02:00
Larpon 2aea11e607
missdoc: add support for single files as arguments (#7894) 2021-01-05 16:13:01 +02:00
Daniel Däschle ad8177ef2e
tests: readd http test (#7885) 2021-01-05 12:40:48 +02:00
yuyi c66ee8aa61
tools/vself: minor optimization (#7877) 2021-01-05 03:00:15 +01:00
Lukas Neubert 55d5b9e724
vdoc: include readme link in toc (#7871) 2021-01-05 01:40:21 +01:00
Lukas Neubert 4f5db46bc2
vdoc: prefix for head section id (#7866) 2021-01-04 20:00:18 +02:00
Delyan Angelov a8a81a1708
ci: add "Verify `v test` works" tasks 2021-01-04 13:39:39 +02:00
Delyan Angelov acc93a66bb
ci: skip the mysql.v example on windows too 2021-01-04 00:28:51 +02:00
Delyan Angelov 095857d59b
ci: skip building examples/database/mysql.v on macos 2021-01-03 19:52:28 +02:00
Leandro Silva 86df5cd1a9
examples: C interop for HTML to PDF conversion using libwkhtmltox (#7751) 2021-01-03 16:56:55 +01:00
Delyan Angelov 90839a1b76
vdoc: fix markdown content indentation 2021-01-02 23:17:54 +02:00
Lukas Neubert 38c764f0ce
vdoc: fix toc Constants link (#7810) 2021-01-02 20:18:17 +02:00
Lukas Neubert 9980de39c3
vdoc: remove 's' between paragraphs (#7811) 2021-01-02 19:52:45 +02:00
yuyi 01e098aa77
vrepl: fix v repl on Windows (#7798) 2021-01-02 12:17:39 +01:00
NTBBloodbath c8caf71282
vdoc: fix the indentation of the generated html file (#7802) 2021-01-02 11:11:34 +02:00
Alexander Medvednikov 2533c706ae vweb: migrate all tests and examples to the new syntax 2020-12-31 17:22:47 +01:00
zakuro 1fb6710c89
build: remove `v build file.v` (#7695) 2020-12-31 15:24:55 +01:00
Delyan Angelov c3e8e2ad31
help: describe wipe-cache in `v help other` 2020-12-30 22:10:18 +02:00
Delyan Angelov 8724749728
tools: implement `v wipe-cache` to ease cleaning up the cache on windows 2020-12-30 21:36:54 +02:00
Daniel Däschle 7bd0c5bc03
vdoc: search fix titles (#7681) 2020-12-29 21:01:12 +02:00
ka-weihe 2c65c5c61a
ci: sanitize compiler for tests (#7685) 2020-12-29 20:27:57 +02:00
Daniel Däschle d69993a40e
vdoc: implement advanced search (beta) (#7630) 2020-12-29 13:51:24 +02:00
ka-weihe 4d5ee0649c
ci: add test-fixed with -fsanitize (#7665) 2020-12-29 07:46:54 +02:00
yuyi 07459a77e3
cgen: fix gen_array_equality_fn() (#7633) 2020-12-28 12:26:50 +02:00
Delyan Angelov b7a5dbf7b4
test-cleancode: add the rest of vlib/x/websocket/ 2020-12-28 07:25:46 +02:00
Alexander Medvednikov bd67b647f2 websocket: vfmt 2020-12-28 01:06:57 +01:00
Delyan Angelov 7bf46c36bb
vfmt: add a comment about the role of the .is_worker field 2020-12-27 17:15:26 +02:00
Lukas Neubert aac8520838
vfmt: correctly increment error counter (#7615) 2020-12-27 16:26:51 +02:00
Daniel Däschle 5c4c5042b3
vdoc: fix scrollbar on mobile (#7614) 2020-12-27 16:14:16 +02:00
Lukas Neubert 6f194f2fa9
test-cleancode: add `benchmark` and `bitfield` (#7613) 2020-12-27 15:51:55 +02:00
Lukas Neubert e8b5fa2134
vfmt: fix early exit when verifying multiple files; update help (#7611) 2020-12-27 14:36:59 +01:00
Lukas Neubert 06fdf34214
fmt: unwrap long single line ifs (#7608) 2020-12-27 14:20:30 +01:00
Daniel Däschle 929a002229
vdoc: move to it's own directory cmd/tools/vdoc/ (#7606) 2020-12-27 14:43:23 +02:00
cbracketdash 0210d1bf24
vrepl, term: return cursor to the top-left corner in vrepl after `clear` (#7600) 2020-12-27 13:43:36 +02:00
zakuro 9d71a54a61
repl: fix readline history (#7596) 2020-12-27 12:41:48 +02:00
Delyan Angelov d563261e58
vweb: run vfmt, add it to `v test-cleancode` 2020-12-27 11:38:12 +02:00
Stéphane Aulery 712bacab98
help: add an entry about the doctor tool in `v help` (#7589) 2020-12-26 22:09:58 +02:00
Lukas Neubert 13b14ecead
test-cleancode: add the `arrays` module too (#7583) 2020-12-26 20:21:52 +02:00
Delyan Angelov 90175e95d3
tests: cleanup failed assertion output 2020-12-26 19:24:52 +02:00
Lukas Neubert 6969300f8a
test-cleancode: add vlib/orm (#7577) 2020-12-26 14:40:22 +02:00
Daniel Däschle 6842c3c1a4
vdoc: add a node type prefix (#7563) 2020-12-26 08:55:35 +02:00
Daniel Däschle 333cd41fca
vdoc: polish fonts a bit (#7560) 2020-12-25 19:04:46 +02:00
Delyan Angelov 9b19388402 ci: skip profile_test.v in the musl jobs 2020-12-25 18:44:52 +02:00
Lukas Neubert 72b0421f3e
vdoc: if toc_slug is empty use the one from first child (#7533) 2020-12-25 17:01:43 +02:00
Alexander Medvednikov bba79194e7 tools/fast: clarify free tier vcpu performance 2020-12-23 10:53:43 +01:00
Ned Palacios edefc9e2e4
vdoc: minor css and js fixes (#7485) 2020-12-23 08:00:22 +02:00
spaceface a47749b204
vup: hide some output when not in verbose mode (#7477) 2020-12-22 23:42:23 +01:00
Lukas Neubert c4aae2b55f
vfmt: do not replace module aliases in fn param and return types (#7472) 2020-12-22 22:38:13 +02:00
Alexander Medvednikov 25cbbc1e44 tools/check-md: skip CHANGELOG 2020-12-22 21:01:54 +01:00
zakuro fc251a653e
test-cleancode: remove time.v duplicate (#7460) 2020-12-22 10:18:37 +02:00
Delyan Angelov 93c0f503a2 math.big: make big.from_string take a decimal, add big.from_hex_string 2020-12-22 09:45:56 +02:00
Delyan Angelov 9eb6c4ef87 flag: run vfmt over vlib/flag, add it to vtest-cleancode.v 2020-12-21 22:24:10 +02:00