1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
Commit Graph

4529 Commits

Author SHA1 Message Date
Delyan Angelov
1a96bcf405 ci: fix v vet filtering 2020-08-12 20:34:13 +03:00
Alexander Medvednikov
f8be2110ec sort: fix sorting by struct fields 2020-08-12 18:43:41 +02:00
Alexander Medvednikov
e5e31f7210 sort: handle .sort(a.field > b.field) 2020-08-12 06:11:40 +02:00
Alexander Medvednikov
4bc0dde413 all: new .sort(a < b) syntax 2020-08-12 05:54:51 +02:00
Alexander Medvednikov
9800cf1e7b checker: improve array errors; gg: remove unused imports 2020-08-12 03:54:17 +02:00
Uwe Krüger
bb93bf34ec
sync/semaphores: use dispatch semaphores on MacOS (#6110) 2020-08-12 03:45:09 +02:00
Delyan Angelov
ca7a64a451 cgen: add support for -g again 2020-08-12 02:05:45 +03:00
Uwe Krüger
433610b5c0
sync/channels: provide .cap and .len() (#6104) 2020-08-11 17:52:13 +02:00
Swastik Baranwal
9fdb1701e0
checker: add a check for str[i] = a (#6107) 2020-08-11 17:41:54 +02:00
Alexander Medvednikov
99798b83b4 parser: fix match/else check 2020-08-11 17:30:37 +02:00
Alexander Medvednikov
c5aa2bfa51 tests: fix a match test 2020-08-11 16:26:52 +02:00
Alexander Medvednikov
1a9dba0005 checker: make << shifts work with custom number types 2020-08-11 01:05:34 +02:00
Alexander Medvednikov
2dd82748e0 checker: simplify << error message 2020-08-11 01:01:33 +02:00
Alexander Medvednikov
6d72209363 checker: minor c2v fixes 2020-08-11 00:51:15 +02:00
Alexander Medvednikov
11113e43e7 checker: a minor perf fix 2020-08-10 23:59:42 +02:00
Nick Treleaven
d8d82a0be4
checker: make has_return fn more efficient (#6103) 2020-08-10 23:59:08 +02:00
Alexander Medvednikov
88988817d0 parser: minor match simplification 2020-08-10 19:54:38 +02:00
Uwe Krüger
c3cdfa1c96
sync/channels: provide `try_push(), try_pop() as public methods (#6101) 2020-08-10 18:06:42 +02:00
Delyan Angelov
36eae1c175
builtin: x.vstring() instead of string(x) (#6102) 2020-08-10 18:05:26 +02:00
Delyan Angelov
eba413853f compiler_errors_test.v: use work.close() instead of sentinel tasks 2020-08-10 15:26:54 +03:00
Nick Treleaven
5e2824e2f2
vfmt: align field attributes (when no inline comment after type) (#6089) 2020-08-10 13:13:42 +03:00
Delyan Angelov
bd32f0969f parser: enable CamelCase named method names for JS. objects 2020-08-10 10:39:14 +03:00
Uwe Krüger
20a65cf9c8
sync/channels: implement close() method (#6098) 2020-08-10 06:22:20 +02:00
Nick Treleaven
fce106cf83
parser: use Attr.arg field for [name: arg] (#6084) 2020-08-10 02:00:14 +02:00
Sandro Martini
c7fae4dd6f
vweb: add set_status() (#6087) 2020-08-09 18:05:06 +02:00
Nick Treleaven
2dd90de993
parser: error on [unsafe_fn] (#6090) 2020-08-09 12:22:11 +03:00
Alexander Medvednikov
200f8dacb7 []byte.str2() => bytestr() 2020-08-09 04:22:42 +02:00
Alexander Medvednikov
94f4dfe85b builtin: a temporary []byte.str2() (until runes are implemented) 2020-08-09 04:20:43 +02:00
João Victor Oliveira Couto
f6a85d5305
net.html: create html parser module (#6076) 2020-08-09 04:13:34 +02:00
Louis Schmieder
97fec78b40
io: input/output streams (#6078) 2020-08-09 04:12:29 +02:00
Alexander Medvednikov
64f218e943 string: fix all cap .title() test 2020-08-09 04:09:48 +02:00
Alexander Medvednikov
c65dbe51d6 parser: c2v fixes 2020-08-09 03:58:14 +02:00
Nick Treleaven
6cc8815931
parser: support [unsafe] instead of [unsafe_fn] (#6066) 2020-08-08 16:24:05 +02:00
Maciej Obarski
2a4ef2acbd
regex: new options returning interface to the regex module (#6062) 2020-08-08 09:04:12 +03:00
Delyan Angelov
55b8cc1bb2 tests: parallelize compiler_errors_test.v using channels & threads 2020-08-07 16:44:49 +03:00
Delyan Angelov
34d03801de tests: run ws_test.v only with -d network 2020-08-07 10:14:40 +03:00
Alexander Medvednikov
ce4ee2b247 v0.1.29 2020-08-06 19:36:52 +02:00
Delyan Angelov
4568ce8f00 builtin: add sanity check on the number of returned frames by C.backtrace 2020-08-06 19:50:29 +03:00
Uwe Krüger
d63daa0798
sync: use mfence on windows-tcc (#6079) 2020-08-06 17:31:05 +02:00
Alexander Medvednikov
ea76a33b43 remove freetype references everywhere 2020-08-06 17:23:57 +02:00
Uwe Krüger
863cf8af60
sync: channel implementation (#6074) 2020-08-06 15:28:19 +02:00
Larpon
09f1362305
os: let temp_dir adhere to posix/fhs version 3.0 on linux and mac (#6069) 2020-08-05 19:02:57 +02:00
Delyan Angelov
d1257f5590 tests/valgrind: add skipped fn_returning_string_param.vv (-autofree) 2020-08-05 19:35:18 +03:00
Delyan Angelov
6c27ce58ed v.util.vtest: extract the common code for VTEST_ONLY in a single place 2020-08-05 19:34:27 +03:00
Alexander Medvednikov
ecaccafd31 gg: image cache 2020-08-05 16:00:24 +02:00
Alexander Medvednikov
67aafd03c6 gg: fix image rendering 2020-08-05 14:34:28 +02:00
spaceface777
bf20d6d3db
builder: don't panic if msvc rootdir isn't found (#6068) 2020-08-05 13:22:10 +03:00
Delyan Angelov
f331f63f53 ci: fix windows build 2020-08-05 09:09:18 +03:00
Delyan Angelov
5874d7c5ab os: add os.getpid(), use it in os.is_writable_folder on windows 2020-08-05 09:04:40 +03:00
Delyan Angelov
7b1944c2da gg: simplify the image_cache 2020-08-05 08:46:20 +03:00
Delyan Angelov
221a777a80 gg: cache sokol C.sg_image handles 2020-08-05 08:09:25 +03:00
Delyan Angelov
ab7936f514 os.exec: on unix return error, when the command was not found, instead of os.Result 2020-08-05 07:11:51 +03:00
Maciej Michalec
449c98e861
scanner: floats without fraction (fix #5262) (#6064) 2020-08-05 05:11:29 +02:00
Alexander Medvednikov
f3ebd3a6e7 gg: fix image rendering 2020-08-05 03:15:40 +02:00
Enzo
f238890fe9
compiler: move attributes to declarations (#6026) 2020-08-04 20:10:22 +02:00
Nick Treleaven
3ce6dd6cbc
hash: use match expression with ranges (#6046) 2020-08-04 20:09:58 +02:00
Delyan Angelov
3dfe242dbb vfmt: add a regression test for `type SocketMessageFn = fn (mut c Client, msg &Message) ? 2020-08-04 16:13:04 +03:00
Delyan Angelov
cd9bb51af2 vfmt: fix 6040 (part 2) 2020-08-04 16:08:47 +03:00
Delyan Angelov
f9d241ae27 gg,stbi: implement gg.create_image_from_memory/2 2020-08-04 13:18:08 +03:00
Delyan Angelov
216b6bf285 gg: remove tracing println in draw_image 2020-08-04 12:57:54 +03:00
Delyan Angelov
9ce75e10d5 gg: free gg.create_image from having to be called by sokols init_fn callback 2020-08-04 12:37:28 +03:00
Swastik Baranwal
f3817c47f9
token: remove switch keyword (#6056) 2020-08-04 11:04:07 +02:00
Delyan Angelov
f7a0d0a02f ci: fix -autofree compilation of vlib/v/tests/valgrind/strings_and_arrays.vv 2020-08-04 11:30:02 +03:00
Alexander Medvednikov
60c642f42d gg: clean up draw_image() 2020-08-04 01:26:56 +02:00
Alexander Medvednikov
7a7572e478 autofree: free temp string exprs 2020-08-04 01:26:34 +02:00
Nick Treleaven
c33dbbc216
fmt: don't add newlines for UnsafeExpr (#6048) 2020-08-04 00:29:10 +02:00
Delyan Angelov
e291c38119 ast: add use case comment for MatchExpr.var_name 2020-08-03 22:10:59 +03:00
Swastik Baranwal
c547e8b191
v/fmt: fix formatting of type Foo = fn (a int)? (#6047) 2020-08-03 19:28:48 +03:00
dils2k
8dede3b535
builder: add a verror, when the output folder is not existing and writable (#5966) 2020-08-03 18:19:36 +03:00
Nick Treleaven
3e4df7f140
v/fmt: fix dropping as ident from if sum is T statement (#6049) 2020-08-03 18:16:06 +03:00
Carlos Esquerdo Bernat
66b3fabeef
log: avoid the deprecated .is_opened() method (#6039) 2020-08-03 02:35:08 +03:00
Delyan Angelov
0ac30a8d9c gg: enable image transparency in gg.draw_image2 too 2020-08-03 00:30:08 +03:00
Delyan Angelov
a7ca1682c4 gg: fix gg.draw_image2 (image drawn, but without transparency for now) 2020-08-02 23:47:37 +03:00
Delyan Angelov
0b6b0aca09 parser: fix infinite loop on unexpected $ between statements 2020-08-02 18:17:38 +03:00
Alexander Medvednikov
79b70006e6 examples: simplify gg/rectangles.v 2020-08-02 17:01:10 +02:00
Delyan Angelov
c6ae322f85 parser: add hard limit to the number of statements in a fn 2020-08-02 17:58:05 +03:00
Nick Treleaven
8dcc3cda97
os.cp: fix returning false error on Windows (#6037) 2020-08-02 14:08:45 +03:00
Nick Treleaven
7f447bb82f
ast: use Block instead of UnsafeStmt (#5981) 2020-08-02 14:06:44 +03:00
Alexander Medvednikov
cc57b52773 gg: fix typo 2020-08-01 23:52:15 +02:00
Alexander Medvednikov
149de958f3 gg: fix compilation 2020-08-01 23:45:36 +02:00
Alexander Medvednikov
a1593e7db8 checker: 1 line v fmt fix 2020-08-01 23:41:32 +02:00
Alexander Medvednikov
fb4550e582 gg: new create_image() (part 1) 2020-08-01 23:40:28 +02:00
Swastik Baranwal
d56d622a43
checker: add checks for byte casting (#5917) 2020-08-01 23:17:00 +02:00
Carlos Esquerdo Bernat
d71c11577a
os: move file logic to file.v (#6013) 2020-08-01 23:07:37 +02:00
Duarte Roso
055117dc5f
builtin: make byte.hex() two digits format (#5886) 2020-08-01 23:06:08 +02:00
spaceface777
4f37202b72
checker: allow struct fields starting with capitals in builtin (#5998) 2020-08-01 23:01:40 +02:00
spaceface777
1feca22e28
jsgen: don't generate JS. struct decls (#6035) 2020-08-01 22:27:25 +02:00
Alexander Medvednikov
adafd24819 gen: auto_str_methods.v 2020-08-01 16:36:12 +02:00
Delyan Angelov
0fb8074353 cgen: add support for $if gcc {} too 2020-07-31 21:25:37 +03:00
joe-conigliaro
1ea511b530
builder/cgen: get -usecache working for self cimpilation 2020-07-31 20:10:19 +10:00
Nick Treleaven
eb47ce1e83
ast: fix ParExpr.str(), RangeExpr.str(), SizeOf.str() (#6023) 2020-07-31 02:31:01 +02:00
Louis Schmieder
1fd499ed4a
vweb: fix request checking (#6027) 2020-07-31 01:26:56 +02:00
Delyan Angelov
91c9c0c917 checker: fix unknown_method_suggest_name.out test result too 2020-07-30 19:37:36 +03:00
Delyan Angelov
65891f54ed v.util.suggestions: fix hash.crc32.Crc32 case 2020-07-30 19:35:16 +03:00
Delyan Angelov
f300f787f3 checker: add suggestions for method mispellings and unknown types 2020-07-30 18:48:16 +03:00
Delyan Angelov
2c45e601ef builder: increase backtrace size with tcc to 25 frames 2020-07-30 16:56:58 +03:00
Delyan Angelov
3883c34b8c vfmt: fix eating of n in string(x,n) 2020-07-30 12:15:04 +03:00
Lukas Neubert
f2c639c869
builtin: add string.contains_any() (#5963) 2020-07-29 21:48:50 +02:00
Alexander Medvednikov
f269cbdc94 Revert "parser: Support unsafe(expr) (#5973)"
This reverts commit 19c226fcf8.
2020-07-29 21:41:47 +02:00
Delyan Angelov
9c9533dad9
checker: add error for fn f() Struct { return &Struct{} } (#6019) 2020-07-29 21:40:43 +02:00
Delyan Angelov
81f8e910e6 compiler: remove space at the end of warn/error messages to minimize diff churn 2020-07-29 20:37:55 +03:00
Swastik Baranwal
4500e7131e
checker: add a checker error for fn calls on left side of an assignment (#5993) 2020-07-29 18:33:00 +03:00
Carlos Esquerdo Bernat
7b630f0350
ws: send unsolicited pong control frame on connect in ws_test.v (#6010) 2020-07-29 18:11:24 +03:00
Carlos Esquerdo Bernat
2f2463a04c
ws: make Client.state pub mut (#6009) 2020-07-29 17:52:33 +03:00
Alexander Medvednikov
280afb2282 builder: rename a to args 2020-07-28 22:33:33 +02:00
Leah Lundqvist
51c9b49d3f
iOS: basic building and running (#5999) 2020-07-28 22:27:38 +02:00
Ruofan XU
1d59d35129
cgen: fix sum type match (#5978) 2020-07-28 22:17:25 +02:00
Delyan Angelov
e06448b616 eventbus: update test and docs too 2020-07-28 19:08:16 +03:00
Carlos Esquerdo Bernat
0539b2a7ea
eventbus: removed check on publish, always use receiver, args, sender order for callbacks (#5940) 2020-07-28 18:48:25 +03:00
Delyan Angelov
9c028bb299 checker: fix passing enum to a method expecting string 2020-07-28 13:50:40 +03:00
Delyan Angelov
228486555c http: add pub to Method.str() 2020-07-28 12:34:29 +03:00
Delyan Angelov
5bf3b6eda3 gg: fix running tetris and ui examples on linux 2020-07-28 12:12:44 +03:00
Carlos Esquerdo Bernat
49a7a835c7
ws: update README.md (#5983) 2020-07-28 11:22:03 +03:00
Nick Treleaven
19c226fcf8
parser: Support unsafe(expr) (#5973) 2020-07-28 11:20:52 +03:00
Enzo
d7ed3cd8b7
fmt: fix SQL formatting in ORM expressions - remove trailing spaces (#5996) 2020-07-28 11:09:42 +03:00
Carlos Esquerdo Bernat
28657fe7cb
http: handle all of the http.Method values in .str() (#6002) 2020-07-28 10:39:10 +03:00
Swastik Baranwal
8b66816bdc
scanner: more checks for _ as num_sep (#5992) 2020-07-28 16:09:19 +10:00
joe-conigliaro
5d49034c31
http: backend_windows - use Method enum in ssl_do() 2020-07-28 14:35:21 +10:00
joe-conigliaro
395e886b2e
http/vweb: use Method enum & add helpers 2020-07-28 14:13:19 +10:00
Alexander Medvednikov
fec9920b1a http: replace method string with an enum 2020-07-27 21:20:23 +02:00
Alexander Medvednikov
65159b8070 gg: bold/mono/italic fonts 2020-07-27 21:20:23 +02:00
joe-conigliaro
61c1c4a690
checker: add error for invalid sum type cast MySt{1} 2020-07-28 01:04:04 +10:00
Enzo
2de1437a1e
ci: vet all files from the compiler (#5994) 2020-07-27 12:15:29 +02:00
joe-conigliaro
1086150ab9
builder: add comment to parse_imports re: dup file parsing 2020-07-27 12:06:48 +10:00
Alexander Medvednikov
3d19167628 http: fix cookies (part 2) 2020-07-26 22:01:25 +02:00
Alexander Medvednikov
cf4235ab65 http: fix cookies 2020-07-26 15:54:21 +02:00
Delyan Angelov
88345d759a tests: add support for skipping to valgrind_test.v 2020-07-26 16:09:58 +03:00
Ruofan XU
7027b2354b
cgen: fix array and map with fns (#5938) 2020-07-26 14:22:02 +02:00
Delyan Angelov
dfa01d8877 rand: add rand.ulid_at_millisecond/1, use it in rand.ulid/0 2020-07-26 14:17:29 +03:00
penguindark
7d52d612ce
rand: add rand.ulid() (#5979)
* removed debug println

* added newline to the end of the file

* time: add .unix_time_milli() method; rand,time: add tests

* rand: add more ulid tests; move tests to a separate file random_identifiers_test.v

* run vfmt over vlib/rand/random_identifiers_test.v

* speed up time.unix_time_milli

* simplify and speedup time.unix_time/0 and time.new_time/1

* update comment about rand.ulid()

* fix terminating 0 off by 1 issue in rand.ulid()

* optimize time.new_time()

* restore the master version of vlib/time/parse.v

* make test_unix_time more robust

Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-07-26 13:10:56 +03:00
Delyan Angelov
9e652c4f40 ci: fix remaining failing tests. Do mut ptr check only outside unsafe{} blocks. 2020-07-26 10:59:07 +03:00
Delyan Angelov
9d056168ae ci: fix failing tests 2020-07-26 10:48:24 +03:00
Delyan Angelov
a7f484d9a7 tests: make output of vlib/v/compiler_errors_test.v more readable 2020-07-26 10:47:55 +03:00
Carlos Esquerdo Bernat
1f8ae5d12c
websocket: add tests (#5967) 2020-07-25 22:25:31 +02:00
Alexander Medvednikov
6796b93abd tests: fix compiler_errors_test.v 2020-07-25 22:20:10 +02:00
Delyan Angelov
6fcc6cdc75 rand: add comments for rand.uuid_v4, apply some more perf tweaks 2020-07-25 21:39:54 +03:00
Delyan Angelov
ee3ebed23c rand: further speed up of rand.uuid_v4 2020-07-25 20:21:44 +03:00
Delyan Angelov
3d2fd471b6 ci: prepare for enabling compilation with g++ again 2020-07-25 20:20:49 +03:00
Alexander Medvednikov
7c86156be5 checker: fix unsafe tests 2020-07-25 18:58:23 +02:00
Alexander Medvednikov
34907f7605 checker: do not allow assigning immutable refs to mutable vars 2020-07-25 18:32:36 +02:00
Delyan Angelov
a552674254 vvet: fix segfault on v vet . 2020-07-25 15:57:57 +03:00
Delyan Angelov
d5b837e808 rand: speed up rand.uuid_v4() ~7x, with -prod 2020-07-25 13:09:05 +03:00
Delyan Angelov
c1e14b451e builder: show timing info in bold; also add a checker summary: line with -stats 2020-07-25 10:32:29 +03:00
Alexander Medvednikov
3c1427a4e8 all: fix current module in build-module mode 2020-07-25 01:37:54 +02:00
Louis Schmieder
b58b15993c
gen: compile time for (methods and fields) (#5957) 2020-07-25 00:02:44 +02:00
Lukas Neubert
2ccb28a93e
checker: run vfmt over checker.v (#5965) 2020-07-24 20:12:01 +03:00
Delyan Angelov
289974dd15 rand: use time microseconds too in default rand initialization; generate proper uuid_v4 2020-07-24 14:33:58 +03:00
Delyan Angelov
c429fa7e27 rand: add test for rand.uuid_v4() 2020-07-24 14:01:48 +03:00
Delyan Angelov
bba0edf9a3 rand: add rand.uuid_v4() 2020-07-24 13:59:24 +03:00
Delyan Angelov
bfca55b87a examples: fix v build-examples 2020-07-24 13:29:47 +03:00