Commit Graph

998 Commits (f6bdc6b87e49cfdf5f7fee10d5d5ee08e1485b66)

Author SHA1 Message Date
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
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 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
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
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
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
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
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 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
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
crthpl 14434cc86a
all: bare metal support (fix `-freestanding`) (#9624) 2021-04-14 07:50:50 +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
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
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