Alexander Medvednikov
7dfae2384b
builtin: remove asl.h include
2020-08-22 17:22:14 +02:00
Alexander Medvednikov
9e12095111
gg: image: return an optional instead of panic(); darwin: fix nsstring()
2020-08-22 17:09:30 +02:00
Delyan Angelov
0bdb096bfa
x.net: use port 45123 in tcp_test.v, preventing sporadic `socket error 98` conflicts with websocket_test.v
2020-08-22 15:29:29 +03:00
Delyan Angelov
94ced907d2
sort: fix C compilation error for `fn abc(mut a []int) { a.sort() }`
2020-08-22 15:20:49 +03:00
Yarila682
7dde82322a
cgen: fix dereferencing a mutable array ( #6191 )
2020-08-22 12:48:09 +02:00
Daniel Däschle
fcc61a981d
all: TypeSymbol.source_name ( #6187 )
2020-08-22 12:29:15 +02:00
Delyan Angelov
b5ca114a96
ui: fix compiling the calculator ui example with tcc
2020-08-22 12:58:48 +03:00
Nick Treleaven
98c39a37c0
scanner: warn about interpolation for `$f(expr)` ( #6179 )
2020-08-22 05:48:06 +02:00
Alexander Medvednikov
793d2ce6dc
stbi: more clear panic message
2020-08-22 00:51:16 +02:00
Tomas Hellström
fb148e0b61
x.websockets: new websockets module on top of x.net ( #6189 )
2020-08-22 00:50:38 +02:00
Nick Treleaven
1b914d217e
fmt: don't remove `mut` from `if mut` smart cast ( #6188 )
2020-08-22 00:00:02 +02:00
Delyan Angelov
06967d9297
sort: require a mutable receiver
2020-08-21 21:19:37 +03:00
Lukas Neubert
93e6c3df6a
cli: various improvements ( #6180 )
2020-08-20 23:14:53 +02:00
Emily Hudson
b88569c845
x.net: new net module ( #6130 )
2020-08-20 23:01:37 +02:00
Delyan Angelov
9b171b76e0
os: call os.real_path/1 before returning in os.find_abs_path_of_executable/1
2020-08-20 19:23:19 +03:00
Daniel Däschle
0c183da116
checker: fix sort return type ( #6182 )
2020-08-20 17:29:40 +03:00
Delyan Angelov
e8ff94fb8b
net.html: simplify map setting (fixes compilation with tcc on aarch64)
2020-08-20 16:45:54 +03:00
Delyan Angelov
dfc4298125
tests: return early in x64_test.v on non AMD64 machines
2020-08-20 15:42:26 +03:00
Delyan Angelov
8c7bcad6b1
cgen: support for `$if amd64 {}` and `$if aarch64 {}`
2020-08-20 15:28:37 +03:00
Lukas Neubert
6eea13ecc2
clipboard: wrap pointer indexing in unsafe block ( #6178 )
2020-08-20 10:33:12 +02:00
Alexander Medvednikov
9da7349f63
gg: minor fixes
2020-08-20 08:32:05 +02:00
Lukas Neubert
88bca9d17a
clipboard: wrap vstring call in unsafe ( #6170 )
2020-08-19 16:06:23 +02:00
Nick Treleaven
217f04e311
checker: disallow casting to bool, use `some_int != 0` instead ( #6138 )
2020-08-19 14:37:55 +02:00
Alexander Medvednikov
55b025413d
fmt: temporary struct attr fix
2020-08-19 14:33:45 +02:00
Larpon
d9aae023b1
android: initial support for C output using sokol_main ( #6164 )
2020-08-19 11:00:15 +02:00
spaceface777
c1651bd271
gg: fixes and Android support ( #6161 )
2020-08-19 07:10:42 +02:00
jhuntos
c42ca84850
pg: fix array init warnings ( #6163 )
2020-08-19 07:10:09 +02:00
Nick Treleaven
e69f091bbd
parser: require `(` on same line as name token for fn call or cast ( #6160 )
2020-08-19 02:37:17 +02:00
Alexander Medvednikov
51bd69cdd8
cgen: fix u64 in struct str()
2020-08-18 16:05:11 +02:00
Delyan Angelov
7727aad90f
net.http: fix windows compilation warning
2020-08-18 12:14:21 +03:00
Delyan Angelov
2f6757a56a
Revert "cgen: fix all -Wmissing-variable-declarations ( #5802 )"
...
This reverts commit ae349ca6ba
.
Fixing these warnings, unfortunately also means, that hot code
(which reloads a shared library during runtime) can not use V
constants, because the private static C variables in the shared
library will not be initialized by _vinit(), which is only called
by the main V program.
For example in examples/hot_reload/bounce.v, using `gx.blue`,
defined as:
` blue = Color { r: 0, g: 0, b: 255 }`
... will instead use a const with all 0 fields (i.e. a black color).
2020-08-18 11:55:55 +03:00
Delyan Angelov
937a3e14c5
cgen: add g.options_typedefs, g.shared_types, g.channel_definitions
2020-08-18 11:45:36 +03:00
Alexander Medvednikov
40d91cc23b
gg: handle bad image index
2020-08-18 01:08:58 +02:00
joe-conigliaro
c599a4c7de
checker: remove pos+1 on innermost call
2020-08-18 07:39:40 +10:00
Uwe Krüger
0d7cc8829a
cgen: implement channel `push()`/`pop()` using `<-` operator ( #6154 )
2020-08-17 23:35:36 +02:00
JalonSolov
5c98c0760b
gg: use OpenGL on Windows until D3D issues resolved ( #6155 )
2020-08-17 23:34:51 +02:00
Daniel Däschle
b5c1ea44dc
all: fix mutability after if-smartcast ( #6129 )
2020-08-17 21:11:11 +02:00
Nick Treleaven
36c98b3e5d
cgen: implement fixed array 'for in' for lvalue condition ( #6151 )
2020-08-17 21:10:47 +02:00
Swastik Baranwal
46b4e2a0cd
checker: check`match` types ( #6149 )
2020-08-17 20:19:21 +02:00
Sandro Martini
dab639662f
http: fix new warnings ( #6153 )
2020-08-17 20:17:17 +02:00
Irabaruta Freeman
fa11e124dd
term: add documentation ( #6097 )
2020-08-17 20:16:18 +02:00
Uwe Krüger
9a5f040f72
all: handle `<-` arrow token for channel operations ( #6152 )
2020-08-17 20:12:00 +02:00
joe-conigliaro
c01fd4ac58
parser: remove extra scopes from if & match & fix scope end_pos
2020-08-18 01:51:25 +10:00
Nick Treleaven
6ba6a22a77
checker: prevent from casting non-struct to struct ( #6143 )
2020-08-17 11:19:44 +02:00
Uwe Krüger
0c7d73c8b0
sync/channels: use references for `chan mut X` testcase ( #6145 )
2020-08-16 23:01:49 +02:00
Alexander Medvednikov
b2059c481a
checker: fix an incorrect name test
2020-08-16 19:24:00 +02:00
Alexander Medvednikov
f965ddae49
parser: handle several errors in types; cgen: objC includes
2020-08-16 19:16:59 +02:00
Delyan Angelov
191c908f3a
tests/valgrind: vfmt fn_with_return_should_free_local_vars.vv
2020-08-16 13:22:32 +03:00
Delyan Angelov
fbe02c5ae1
tests/valgrind: add skipped fn_with_return_should_free_local_vars.vv (-autofree)
2020-08-16 13:20:02 +03:00
Delyan Angelov
fc7a108366
v.builder: fix quoting when building thirdparty source files
2020-08-16 10:18:14 +03:00
Yarila682
29528196f2
os: close opened file descriptors in `cp()` ( #6142 )
2020-08-16 04:55:10 +02:00
Nick Treleaven
bab5c21224
parser: warn when fixed-size ArrayInit doesn't have trailing `{}`. ( #6137 )
2020-08-16 04:54:05 +02:00
Enzo
a02593204f
checker: forbid aliasing an alias ( #6118 )
2020-08-16 04:53:16 +02:00
Vinicius Rangel
bf065674cc
json: maps, memory leak, and error forwarding ( #6116 )
2020-08-16 02:30:37 +02:00
Delyan Angelov
e7b2aefd36
v.pref: handle `|` as separators in -path option parsing again (as documented in the help)
2020-08-15 22:09:40 +03:00
Uwe Krüger
c2b4c645a1
sync/channels: document more benchmark results ( #6135 )
2020-08-15 11:20:51 +02:00
Nick Treleaven
0f0a91fc9e
parser: support custom fixed size ArrayInit: `[3]int{init: -1}` ( #6114 )
2020-08-15 11:01:54 +02:00
spaceface777
5f3ced7213
builder: only include `os` when building `.vsh` files ( #6134 )
2020-08-14 21:57:32 +02:00
Uwe Krüger
9602a25a0b
all: add builtin channel type `chan elem_type` ( #6126 )
2020-08-14 21:18:42 +02:00
Nick Treleaven
75212f9fab
cgen: error if ForInStmt is not handled ( #6131 )
2020-08-14 21:01:43 +02:00
Daniel Däschle
b2fee21ef3
checker: check struct casting ( #5864 )
2020-08-14 14:57:08 +02:00
Nick Treleaven
6016f28171
cgen: fix assigning ArrayInit to fixed array: `a = [3]int` ( #6115 )
2020-08-14 13:57:00 +02:00
Nick Treleaven
078ab47a9a
cgen: support `==`, `!=` on FixedArray ( #6119 )
2020-08-14 02:03:38 +02:00
Delyan Angelov
2ad2b4c5ba
vweb: add more tests. Fix missing Content-Length: header bug on 404.
2020-08-14 02:49:15 +03:00
Delyan Angelov
712f4bd7f8
vweb: add tests
2020-08-14 00:52:02 +03:00
Alexander Medvednikov
fc1f41fc84
checker: fix a string error test
2020-08-13 23:33:18 +02:00
Alexander Medvednikov
88cde776e7
checker: more clear string error
2020-08-13 23:21:15 +02:00
Delyan Angelov
8580a0bcd7
cgen: run vfmt to silence `./v fmt -verify`
2020-08-13 21:22:52 +03:00
Delyan Angelov
a62307f711
vweb: fix body appending (missing closing json bracket)
2020-08-13 21:07:31 +03:00
Daniel Däschle
64e8125807
cgen: fixe calling anon fn asynchronously ( closes #6088 ) ( #6121 )
2020-08-13 20:06:56 +02:00
Daniel Däschle
34b28cb68a
fmt: fix anon fn call ( #6120 )
2020-08-13 20:05:59 +02:00
Delyan Angelov
1135dffe2d
cgen: prevent generation of duplicate interface method wrappers
2020-08-13 20:56:58 +03:00
spaceface777
2353814821
vweb: fix body size calculation ( #6122 )
2020-08-13 20:55:33 +03:00
Delyan Angelov
da7adb5b1b
ci: fix failing tests for compiler_errors_test.v
2020-08-13 13:16:41 +03:00
Delyan Angelov
fd5a76a8ad
ci: fail compiler_errors_test.v, when at least one of all the parser/checker tests failed
2020-08-13 12:57:16 +03:00
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