Commit Graph

740 Commits (e505fcdac0fbdbd0ae90e3eaf62a795028ae6472)

Author SHA1 Message Date
Delyan Angelov 4e2b908f21
ci: fix `os` compilation on windows 2021-01-26 17:41:27 +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 728344ff65
ci: fix `v test-cleancode` 2021-01-25 12:55:01 +02:00
Alexander Medvednikov c21f57ff59 os: vfmt os.v 2021-01-23 10:33:53 +01:00
Alexander Medvednikov 45cc3ec664 sokol: remove an absolute import 2021-01-23 10:32:00 +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
Lukas Neubert ac2c3847af
all: update copyright to 2019-2021 (#8029) 2021-01-18 13:20:06 +01:00
Daniel Däschle 53941c4a0a
fmt: fix if cond break readability (#8132) 2021-01-16 02:12:17 +01:00
Delyan Angelov 995f27a7c0
builtin,os: use more precise C. declarations for C.fread, C.fwrite and C.qsort 2021-01-15 12:15:31 +02:00
Delyan Angelov adf084eeed
cgen: fix address violations for `return error(abc)`, reduce leaks in `os` 2021-01-14 04:58:26 +02:00
zakuro 254df0ca62
fmt: improve string quotes (#8075) 2021-01-13 06:05:27 +01:00
zakuro 33694665f0
fmt: align each contiguous field of struct. not the whole. (#7981) 2021-01-12 04:38:43 +01:00
yuyi a1c67232d0
checker: fix duplicate variable name (fix #265) (#7982) 2021-01-10 21:41:29 +01:00
Delyan Angelov 722a603222
cgen: fix os.args initialization, so that `const x = os.args[0]` works 2021-01-10 15:17:24 +02:00
Nick Treleaven 8fc33bc27d
checker: warn when casting number or a voidptr to reference type outside unsafe (#7900) 2021-01-05 20:07:45 +02:00
clubby789 0ab6a8cd01
os: add a `posix_set_permission_bit` function (#7754) 2021-01-04 19:57:17 +02:00
zakuro dd516858d4
fmt: align struct field comments (#7632) 2021-01-03 21:10:25 +01:00
yuyi 7ce3c5e206
os: change os.mv/2 return type to `?` (#7738) 2020-12-31 11:33:39 +02:00
Delyan Angelov b4f02adc32
os: add os.execve/3 (extracted from unix_spawn_process); use os.execvp/2 in v.util.launch_tool/3 2020-12-30 18:14:03 +02:00
Delyan Angelov fe7fa7077e
ci: fix for os.execvp on macos (cargs << charptr(cmdpath.str) too) 2020-12-28 20:20:56 +02:00
Delyan Angelov 8fe85bcc33
ci: fix for os.execvp on macos (<<charptr()) 2020-12-28 20:15:30 +02:00
Delyan Angelov 4c40891d5e
ci: fix for os.execvp on macos (<<) 2020-12-28 20:10:57 +02:00
Delyan Angelov a8b2745019
ci: fix for os.execvp on macos 2020-12-28 20:01:19 +02:00
Delyan Angelov ef786f9a75
os: add os.execvp/2 2020-12-28 19:35:52 +02:00
Lukas Neubert 06fdf34214
fmt: unwrap long single line ifs (#7608) 2020-12-27 14:20:30 +01:00
Delyan Angelov e26e0c3f72
os: restore some of the deprecated os.File methods 2020-12-26 14:57:51 +02:00
spaceface 214290d55b
fmt: add a space around single-line `unsafe` expressions (#7505) 2020-12-23 19:13:42 +01:00
Alexander Medvednikov 875f7a77a9 checker: arr1=arr2 warning 2020-12-20 10:42:46 +01:00
Delyan Angelov 8addb31440
os: fix typo in AAssetManager 2020-12-17 09:08:23 +02:00
Delyan Angelov 1ee57649b9
os: vfmt all of `os` .v files, add it to `v test-cleancode` with no exceptions 2020-12-16 14:15:11 +02:00
Delyan Angelov 88a8507dd8
os: vfmt most of `os`, add it to `v test-cleancode` 2020-12-16 11:08:23 +02:00
Delyan Angelov bd07177ef0
vlib: prepare os for -Wimpure-v 2020-12-15 09:58:33 +02:00
yuyi 947ceb1595
os: format os.v (#7334) 2020-12-15 09:33:31 +02:00
ka-weihe 4d025582c0
cgen: fix shadowing warning (#7289) 2020-12-12 23:06:02 +01:00
yuyi 095327134e
os: fix trailing slash in dir() (#7283) 2020-12-12 10:59:43 +01:00
Alexander Medvednikov 1abb40dc46 cgen: use `cur_mode ast.Module` instead of a string 2020-12-08 19:52:33 +01:00
Alexander Medvednikov a1c0bb3585 os: File.write_string() 2020-12-08 19:37:33 +01:00
Daniel Däschle 334d605d90
tools,vls: add `v test-parser examples/hello_world.v` (#7145) 2020-12-06 12:42:56 +02:00
heronwr f8af866f76
builtin: make v_realloc use int parameter instead of u32 (#7080) 2020-12-02 15:35:11 +02:00
Delyan Angelov b11d285680
v: support multiple paths in VMODULES env variable (#7048) 2020-11-30 18:31:37 +01:00
Delyan Angelov aae5812337 os: cleanup os.find_abs_path_of_executable/1 2020-11-30 08:40:39 +02:00
ka-weihe 9367dcda10
all: fix remaining c warnings and add -Werror to CI (#7021) 2020-11-29 21:23:37 +02:00
Delyan Angelov 018bd6aac3 os: fix flaky test in process_test.v 2020-11-21 18:01:21 +02:00
Delyan Angelov d633261a99
os: add Process (#6786) 2020-11-16 17:32:50 +01:00
Emily Hudson cd2a2cef25
vlib/net: add buffered IO, x.net -> net (#6754) 2020-11-15 22:54:47 +02:00
Alexander Medvednikov 1c257abc23 autofree: simplify: merge tmp arg logic with scope vars 2020-11-09 14:24:46 +01:00
Alexander Medvednikov 507d724ee6 autofree: free before return tests 2020-11-09 11:54:45 +01:00
Delyan Angelov 4b35495fbe all: support VMODULES environment variable (defaulting to ~/.vmodules) 2020-11-08 08:07:17 +02:00
Delyan Angelov 0ba5544446 checker: add a check for `ptr = Abc{}` 2020-11-07 21:19:46 +02:00
spaceface777 a9e9554b11
all: fix most C warnings (#6758) 2020-11-06 16:26:59 +02:00
Alexander Medvednikov 1b1d17cfb5 os: basic proof of concept stdout capture; autofree: small fixes 2020-11-05 08:44:37 +01:00
Ekopalypse cc4bb71f29
os: prevent unnecessary dependencies when importing `os` on windows (#6741) 2020-11-04 10:19:46 +02:00
Delyan Angelov f7698ea160 v symlink: fix windows PATH setting (cmd.exe needs C: not c:) 2020-10-22 17:31:37 +03:00
Delyan Angelov 50a2b033b7 ci: fix failing tests on windows too 2020-10-15 15:54:44 +03:00
Alexander Medvednikov 7da1afa140 all: switch to the new fn arg syntax everywhere; add lots of vfmt -verify tests 2020-10-15 12:32:28 +02:00
Delyan Angelov 3795aaab5c v test-fmt: reformat some skipped files, comment on the remaining ones 2020-10-15 00:39:09 +03:00
Ekopalypse 2622070f14
os: ensure that setenv creates the key on windows (#6560) 2020-10-04 19:43:28 +02:00
Enzo fd88bfbac8
fmt: fix formatting of anon args (#6545) 2020-10-04 06:32:47 +02:00
Alexander Medvednikov 4879661f5a os: remove base_dir(); dir() and base() fixes 2020-10-01 01:25:52 +02:00
Lukas Neubert 3a8be4d8d9
os: home_dir() remove trailing slash (#6512) 2020-09-30 16:02:54 +02:00
Delyan Angelov dc954bbb03 all: use `macos` consistently in os.user_os and the compiler 2020-09-29 22:32:20 +03:00
Delyan Angelov 03258db26d ci: other mut vlib test fixes 2020-09-27 11:18:55 +03:00
Alexander Medvednikov e2c7126d11 checker: verify mutability of method args 2020-09-27 03:14:24 +02:00
Daniel Däschle abc98c273c
parser: require assign on type alias (#6477) 2020-09-25 12:02:32 +02:00
Marcin 34884c1631
os: fix binary mode read/write on windows (#6431) 2020-09-20 16:28:45 +02:00
Daniel Däschle c960b5979e
vlib: fix incompatible pointer warning (#6385) 2020-09-16 17:40:02 +03:00
Nick Treleaven b552c29bef
os: add fn `read_bytes_into` with buffer argument (#6365) 2020-09-14 15:34:34 +02:00
Delyan Angelov 2bd4355a4c os: add check for path.len == 0 in vfopen 2020-09-13 18:08:58 +03:00
Delyan Angelov 8c71ba8912 os: add more error checking for os.read_bytes and os.read_file 2020-09-13 18:03:19 +03:00
Delyan Angelov 60ecb7e4b6 os: change f.write and f.writeln to return options too 2020-09-12 08:39:28 +03:00
Delyan Angelov ce6d2759f5 os: add os.open_stdin/0 and os.File.get_line/0 2020-09-10 16:57:03 +03:00
Larpon 51d7d7cfae
os: fix os.mv edge case and Windows style paths (#6302) 2020-09-06 13:12:07 +02:00
Larpon b4b898b769
os: enable is_file tests (#6312) 2020-09-06 12:39:02 +02:00
Larpon 81778e507f
os: is_file() (#6301) 2020-09-04 22:27:52 +02:00
Larpon efa49bfbb7
os: make behave more like Unix "mv" command (#6300) 2020-09-04 13:08:47 +02:00
Delyan Angelov 718a4692dd os: enable test_write_and_read_bytes again 2020-08-29 07:43:31 +03:00
Maciej Obarski 7bd2804ce9
all: automatic error propagation in place of "or { return(err) }" 2020-08-29 01:58:03 +02:00
Delyan Angelov 5d18ece661 ci: fix msvc finding (3) 2020-08-28 20:06:41 +03:00
Delyan Angelov dde1b89c5e vup: remove empty new line on unix 2020-08-28 19:09:47 +03:00
Maciej Obarski 2ce5797ec2
os: vfopen returns option now (#6244) 2020-08-28 14:24:00 +02:00
Larpon d982aa54e8
os: add missing documentation (#6234) 2020-08-27 16:57:01 +02:00
Alexander Medvednikov 15bdb8f7cd autofree: tmp arg var frees fixes 2020-08-27 11:30:35 +02:00
Alexander Medvednikov 6921d46185 all: rune type for `` literals 2020-08-27 06:46: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
Nick Treleaven 217f04e311
checker: disallow casting to bool, use `some_int != 0` instead (#6138) 2020-08-19 14:37:55 +02:00
spaceface777 c1651bd271
gg: fixes and Android support (#6161) 2020-08-19 07:10:42 +02: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
Delyan Angelov 36eae1c175
builtin: x.vstring() instead of string(x) (#6102) 2020-08-10 18:05:26 +02:00
Nick Treleaven 2dd90de993
parser: error on `[unsafe_fn]` (#6090) 2020-08-09 12:22:11 +03: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 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 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
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 8dcc3cda97
os.cp: fix returning false error on Windows (#6037) 2020-08-02 14:08:45 +03:00
Carlos Esquerdo Bernat d71c11577a
os: move file logic to file.v (#6013) 2020-08-01 23:07:37 +02:00
pancake 04ef2a2671
os: implement os.system for iOS and uncomment the `$if ios` blocks (#5947) 2020-07-24 10:17:32 +03:00
Alexander Medvednikov 632e27a4a9 all: fix a big mutability bug and update all mutable vars 2020-07-23 23:16:36 +02:00
pancake 36352085ae
v: add support for iOS crosscompilation (#5943) 2020-07-23 07:58:44 +03:00
Nick Treleaven ee349691f9
v/checker: Warn about pointer indexing outside unsafe {} (#5918) 2020-07-22 20:28:53 +03:00
Delyan Angelov 4cb9e651a6 vfmt: fix `sizeof(C.Type)` 2020-07-21 16:28:30 +03:00
Nick Treleaven a74cbf55c7
checker: warn if C.m* or C.s* functions are called outside unsafe blocks (#5869) 2020-07-20 20:06:41 +03:00
Ryan Willis e804ba5294
vfmt: add support for VDIFF_TOOL, detect more diffing tools (#5857) 2020-07-17 14:03:07 +03:00
Ryan Willis f66967a88c
vsymlink: real Windows symbolic link, fallback to batch, make.bat updates (#5841) 2020-07-16 18:33:26 +02:00
ka-weihe df45488e09
cgen: fix warnings (#5820) 2020-07-14 00:16:31 +02:00
Delyan Angelov 1baa7ef806 os: implement os.write_file_array and os.read_file_array . 2020-07-13 10:46:37 +03:00
Takeru Tanaka f61a7bf3df
os,rand.mt19937: fix broken links in code comments (#5806) 2020-07-12 16:18:52 +03:00
Alexander Medvednikov b92ce38593 os: fix v_realloc call on windows 2020-07-11 12:45:22 +02:00
yuyi 4490cd2e8a
os: replace panics with optionals (#5718) 2020-07-07 12:41:42 +02:00
Delyan Angelov 6b2777e681 compiler: support VTMP; tests: delete .tmp.c files on successfull tests 2020-07-06 15:08:46 +03:00
Delyan Angelov bae9ed0350 os: fix file.writeln(s) too, where s contains `0` bytes 2020-07-04 14:14:43 +03:00
div72 95696559b7
os: fix early termination when saving binary (#5646) 2020-07-04 01:48:01 +02:00
Nick Treleaven 0b49e4db1c
v/checker.v: disallow pointer arithmetic for InfixExpr outside unsafe {} (#5640) 2020-07-03 18:10:10 +02:00
Alexander Medvednikov 5eb76606ae cgen: store return vals in tmp vars with -autofree 2020-07-01 14:34:14 +02:00
yuyi c69ef876c5
os: remove `return none` in `fn()?` 2020-06-29 15:06:26 +02:00
Ned Palacios 025652bb78
vdoc: dd .vdocignore + minor fixes 2020-06-29 11:03:09 +02:00
yuyi c588bdee5a
cgen: fix fn()? return 2020-06-29 11:02:40 +02:00
Delyan Angelov c83c5e7c61 os: use `return none` in functions returning `?` 2020-06-26 17:57:02 +03:00
Delyan Angelov 951f30853a os: fix rmdir on windows 2020-06-26 17:24:36 +03:00
Lukas Neubert 692ca8ac83
os: make all rm functions return an optional 2020-06-26 15:01:10 +02:00
yuyi 5e9c154376
os_api: cp/cp_all/... ?bool => ? 2020-06-25 12:06:47 +02:00
Lukas Neubert 30169f86c1
os: make `rm` return an optional 2020-06-24 14:01:19 +02:00
yuyi 7efb3ecb34
checker: check deprecated functions 2020-06-23 16:25:24 +02:00
Alexander Medvednikov 63ef04e03e os: make write_file() return an optional 2020-06-23 11:41:23 +02:00
Swastik Baranwal 72b09d4794
term: add clear 2020-06-19 17:15:41 +02:00
spaceface777 624005bbd0
tcc_win: fix tests 2020-06-19 12:54:56 +02:00
Mike 'Fuzzy' Partin 206e64d72c
os: add os.uname() 2020-06-14 16:46:30 +03:00
Adam Stankiewicz 471c931ada
os: do not trim space from output of exec 2020-06-14 01:41:47 +02:00
Ned Palacios 36edd6295f
vlib: transfer intro to readme; normalize comments 2020-06-08 00:04:23 +03:00
Delyan Angelov 16bf300934 os: fix compilation with -cc gcc -prod of programs using os.cp 2020-06-06 22:05:23 +03:00
Delyan Angelov 3aecdeab63 os,gl,sync: cleanup, prepare for .toplevel_comments vdoc mode 2020-06-06 18:47:25 +03:00
Alexander Medvednikov 13a7ce9e69 gg: GG => Context 2020-06-04 20:26:18 +02:00
Naheel 4fcabb71c4
os: implement cp for nix 2020-06-01 21:11:40 +02:00
Delyan Angelov c6a7d0a3a0 tests: update the remaining erroring tests, CI should be green now 2020-06-01 18:30:26 +03:00
Alexander Medvednikov 3d83934caf checker: check mutating methods; generics fixes 2020-06-01 15:44:10 +02:00
Emily Hudson 75eac291ac
all: variable sized options 2020-05-31 12:57:26 +02:00
Emily Hudson f0a9b88ac4
all: add stdcall attribute, unhandled exception handler, get_raw_stdin, v_realloc 2020-05-29 03:06:27 +02:00
Matt Baulch c7501e2d3d
os: fix build issue caused by fileno on *BSD 2020-05-28 11:08:59 +02:00
Uwe Krüger 013fdb8a4b
checker: restrict numeric promotions to cases where no data is lost 2020-05-27 05:42:48 +02:00
Julia K b4eadb9030
cmd/v: reimplement -path flag 2020-05-26 03:17:52 +02:00
yuyi dda875a9c8
all: unify const names to snake_case 2020-05-22 17:36:09 +02:00
penguindark 8bf290acf0
os: minor fixes 2020-05-22 06:21:11 +02:00
Delyan Angelov ac396ea02f http: cleanup backend_nix.c.v, fixes vpm too 2020-05-20 12:04:28 +03:00
Delyan Angelov 931c846602 os: cleanup code duplication for os.create and os.open 2020-05-19 13:38:06 +03:00
Alexander Medvednikov 03525843a0 parser: do not allow calling private functions 2020-05-18 22:54:11 +02:00
Uwe Krüger 2635be511f
all: re-apply C++ support 2020-05-18 21:38:06 +02:00
Alexander Medvednikov 07a78b2843 Revert "all: C++ compiler support"
This reverts commit 9a237c3e82.
2020-05-18 17:05:48 +02:00
Uwe Krüger 9a237c3e82
all: C++ compiler support 2020-05-18 15:51:36 +02:00
yuyi 7f4cf08516
parser: check `(mut f Foo)` syntax 2020-05-17 13:51:18 +02:00
asvvvad e245e22875
os: make exists_in_system_path function public 2020-05-16 22:46:05 +02:00
asvvvad 57dd26650c
os: add new function exists_in_system_path 2020-05-16 17:10:34 +02:00
Enzo Baldisserri f44a40eee0
checker: check incorrect names 2020-05-16 16:12:23 +02:00
Alexander Medvednikov d7c4630d33 checker: make pub field check an error 2020-05-09 18:34:07 +02:00
Alexander Medvednikov c64f8b0d1f parser/checker: pub: struct fields 2020-05-09 15:16:48 +02:00
Alexander Medvednikov a0ca68ce3f checker: do not allow `string(int)` 2020-05-05 15:26:42 +02:00
Alexander Medvednikov 32a7bd3a48 parser/checker: do not allow using private types from other modules 2020-05-04 21:56:41 +02:00
Delyan Angelov acd80f052b
tests: improve diagnostic output on failure 2020-05-04 11:21:25 +03:00
joe-conigliaro 9f76a7b250
parser: simplify unused vars & add loop/if vars etc 2020-04-27 23:16:31 +10:00
yuyi 2574dce174
all: fix remaining `[]array` warnings 2020-04-26 16:25:54 +02:00
yuyi 9f4d498ff1
all: update`import ()` and `[]array` 2020-04-26 13:49:31 +02:00
Alexander Medvednikov 3ab8dc0092 parser: array init: `[]string` => `[]string{}` 2020-04-26 09:17:17 +02:00
Delyan Angelov 86ba1645b0 os: add os.input(prompt) 2020-04-25 22:04:12 +03:00
yuyi ec9566988a
cmdline: minor optimizaztion 2020-04-25 17:49:51 +02:00
Enzo Baldisserri 323ca2b3bb
checker: check duplicates on match with no else
Refactor match duplication test to work even if there is not else, and to include every expression.
Add tests for duplicate expressions in match.
2020-04-24 17:04:39 +03:00
Delyan Angelov ebc41375f1 os.executable: fix panic when os.executable_fallback fails (early in startup) 2020-04-23 21:53:18 +03:00
Alexander Medvednikov 1b6ae00966 os: rename os_nix.v to os_nix.c.v 2020-04-11 20:43:17 +02:00
lutherwenxu dc4db87be3
vlib: use new filename format 2020-04-11 19:51:32 +02:00
Delyan Angelov 3abbdd4a39 tests: fix vlib/os/environment.v 2020-04-08 18:01:19 +03:00
Delyan Angelov b9ec1479e4 checker: allow again fallthrough in or{} blocks of option calls without assignment 2020-04-08 02:56:24 +03:00
Daniel Däschle 0024ff848d
parser: check if the last or {} block expression is valid
These checks allows for:

a) `x := call() or { 'abc' }`
b) `x := call() or { panic('abc') }`
c) `x := call() or { exit(123) }`
d) `x := call() or { continue }`
e) `x := call() or { break }`
f) `x := call() or { return }`

... but produce errors for:

g) `x := call() or { println('an error') }` , etc.
2020-04-07 17:36:00 +03:00
Delyan Angelov 206c1f4ca1 os: implement os.is_writable_folder/1 2020-04-05 16:56:54 +03:00
Daniel Däschle e077cce103
vlib: add inode/mode information functionality (#4242)
* vlib: add inode/mode information functionality

* vlib: add docs to inode
2020-04-05 00:37:13 +03:00
yuyi 0796eb4149
os: optimize os_windows.v 2020-04-04 11:59:25 +02:00
Alexander Medvednikov 1d52847924 checker: error on an unknown ident 2020-04-03 10:52:48 +02:00
Alexander Medvednikov 5b53b3d7e3 cgen/os: minor fixes 2020-04-02 14:00:28 +02:00
Alexander Medvednikov 5b835d294c more windows fixes + bring back windows ci 2020-04-02 13:44:46 +02:00
Alexander Medvednikov 1178bfa578 windows: a temp SUCCESS fix 2020-04-02 13:31:37 +02:00
Alexander Medvednikov d9c7253836 windows: "".to_wide() fixes 2020-04-02 13:24:23 +02:00
Alexey cedf185b41
v2: fix Windows errors 2020-03-28 10:19:38 +01:00
Alexander Medvednikov 473d9fef55 checker: do not allow extra () in if conditions 2020-03-27 14:57:19 +01:00
yuyi 9c5de77f12
os: ext => file_ext 2020-03-26 14:18:08 +01:00
Delyan Angelov d54843275f
os_test.v: simplify cleanup 2020-03-26 00:09:30 +01:00
Alexander Medvednikov 7070b1cda9 cgen: GotoStmt, err variable 2020-03-25 17:24:55 +01:00
Delyan Angelov 2a7bc63919
vmft2: support for multiline comments, CompIf, AssertStmt, octal literals 2020-03-24 22:18:58 +01:00
Alexander Medvednikov 0e240458d3 os: fix os_test 2020-03-24 17:16:00 +01:00
Alexander Medvednikov 32c8eb6490 os: vfmt os_test.v 2020-03-24 16:18:37 +01:00
Alexander Medvednikov f101e9b9e2 v2: string fixes, is_dir fix 2020-03-24 11:14:11 +01:00
Alexander Medvednikov b69ebd73b2 cgen: minor fixes. v2 can now compile itself! 2020-03-22 16:55:42 +01:00
Alexander Medvednikov 2738a0c776 cgen: backtrace and sigaction fixes 2020-03-22 14:47:45 +01:00
Alexander Medvednikov ab3f6d9202 cgen: generate indents for more readable C code 2020-03-22 10:12:45 +01:00
Naheel c50c6812ce
os: fix cp() spaces in files names 2020-03-22 08:43:24 +01:00
Alexander Medvednikov e5f6a0949f cgen: autofree: first step 2020-03-21 19:52:19 +01:00
Delyan Angelov ba088056ed
solaris: make 'v test-compiler' pass (stage 2) 2020-03-21 09:48:02 +01:00
yuyi 2f27758a4b
os: realpath => real_path 2020-03-20 16:41:18 +01:00
yuyi 010f3efcf0
os: filename => file_name 2020-03-19 15:49:07 +01:00
Joe Conigliaro 126ef0f5c2 checker/gen: add unchecked exprs & small fixes 2020-03-18 19:56:19 +11:00
Delyan Angelov 19f9c18305
os: make executable() more robust 2020-03-13 22:19:02 +01:00
Alexander Medvednikov 973b5c226a cgen: optionals fixes 2020-03-13 12:22:36 +01:00
yuyi 8ff86dbee6
os: is_abs => is_abs_path 2020-03-10 16:09:37 +01:00
yuyi 57b1b12ab6
os: tmpdir => temp_dir 2020-03-10 15:02:09 +01:00
Delyan Angelov 7036ca55e6
os: implement os.environ() (part 2/2) (#3971) 2020-03-10 14:25:16 +01:00
yuyi 876b73f92c
os: join => join_path 2020-03-09 02:23:34 +01:00
yuyi a569959fb8
os api: cachedir => cache_dir 2020-03-08 15:57:47 +01:00
yuyi 23b11c84b1
os api: basedir => base_dir 2020-03-08 15:43:56 +01:00
yuyi 783dee1f48
os: merge with filepath 2020-03-07 22:26:26 +01:00
Alexander Medvednikov b7e2af8151
os: better deprecated message 2020-03-04 20:29:17 +01:00
Alexander Medvednikov f27f832ede cgen: definitions + other fixes; calloc fix 2020-03-04 17:08:28 +01:00
yuyi 448ed41562
os api: rmdir_recursive => rmdir_all 2020-03-03 15:02:50 +01:00
yuyi ea10f44fe6
os api: flush_stdout => flush 2020-03-03 00:00:30 +01:00
yuyi 8ac0739858
os api: cp_r => cp_all 2020-03-02 19:30:04 +01:00
Alexander Medvednikov 7f5a15372f os: fix get_raw_line() + minor v2 fixes 2020-02-28 14:05:20 +01:00
Nicolas Sauzede f5fdbfd004
os: fix getline warning for linux 2020-02-28 02:43:42 +01:00
Alexander Medvednikov a5db9c3519 os: bring back write_bytes_at() 2020-02-27 00:41:05 +01:00
spaceface777 ef8c1203b4
cleanup: replace C for loops with range 2020-02-24 17:55:16 +01:00
SleepyRoy 7d2eb4f604
scanner: make `0o` prefix the only way to define octals 2020-02-23 23:43:04 +01:00
yuyi 9d2a60bb11
os: optimize os_windows.v 2020-02-23 20:46:13 +01:00
yuyi 1a1aa267b7
vlib: remove malloc unsafe warning 2020-02-22 12:41:24 +01:00
yuyi b325320f29
os: minor fixes 2020-02-21 20:14:01 +01:00
Alexander Medvednikov b309e7d0e5 type_to_str() 2020-02-21 14:47:42 +01:00
yuyi 527377dc86
fix os_test.v 2020-02-21 12:24:13 +01:00
Alexey 8677a5981c
os: use unified way to deprecate functions 2020-02-20 23:00:02 +01:00
vitalyster 2e1dbd9f5a
windows: use %USERPROFILE% for os.home_dir() 2020-02-18 02:12:10 +01:00
yuyi 6849a4e770
filepath: path separator (#3756) 2020-02-17 20:31:23 +01:00
yuyi e272a10bda
vfmt fixes 2020-02-16 12:42:28 +01:00
Alexander Medvednikov 9610821884 v2: defer; match a,b; if x := 2020-02-11 10:26:46 +01:00
yuyi c1c2b648ab
os: typo in wait 2020-02-10 18:48:01 +01:00
joe-conigliaro 94537c5901
compiler: scope type alias to module 2020-02-09 15:40:31 +01:00
Delyan Angelov 1618596218
os: fix compiler warnings when just importing os 2020-02-05 11:23:49 +01:00
Delyan Angelov da21b50750
gg,os: minimize memory allocation 2020-02-03 04:01:39 +01:00
Alexander Medvednikov 9f4661391d v2: simplify the type system; an initial version of the V interpreter 2020-02-02 07:56:18 +01:00
radare 2fbfbf45c7
os: simplify read_lines( 2020-01-31 15:59:23 +01:00
Shun Sakai c8c43a2475 update copyright year 2020-01-23 21:04:46 +01:00
KJ Lawrence ae3d84df6b os: add open_file function 2020-01-21 16:58:47 +01:00
Delyan Angelov f317b65808 ui: fixes so that the ui demo works on linux too
* Implement os.resource_abs_path/1 .
* Implement glfw.get_window_size and glfw.get_framebuffer_size .
2020-01-12 19:35:06 +01:00
Alexander Medvednikov b6c0b22742 interfaces fixes; freetype.text_width(); gl and stbi fixes 2020-01-12 16:11:28 +01:00
vitalyster 66a6fa163e windows: read console using ReadFile/ReadConsole (#3387) 2020-01-10 14:06:40 +01:00
r00ster 025efcb731 os: add is_executable, is_writable and is_readable 2020-01-06 09:15:06 +01:00
Delyan Angelov 4c3df963fa v repl: fix println regression on linux 2020-01-05 22:49:09 +01:00
Delyan Angelov 8053175ead android: fix os.create and builtin 2020-01-05 20:13:35 +01:00
Delyan Angelov 67f397f888 os: implement os.cachedir() . Use it inside os.tmpdir() too 2020-01-03 19:46:23 +01:00
Alexander Medvednikov b7663848ef os: fix create() 2020-01-01 12:57:27 +01:00
Alexander Medvednikov 47908c22df cgen_test: skip empty lines; os: make vc_gen compile 2020-01-01 12:50:25 +01:00
Alexander Medvednikov 78c706ab71 Revert "enable macos syscalls"
This reverts commit d226fa7b17.
2020-01-01 12:24:50 +01:00
Alexander Medvednikov d226fa7b17 enable macos syscalls 2020-01-01 12:10:39 +01:00
Alexander Medvednikov 96d02849aa parser: parse_file(path) 2020-01-01 10:15:05 +01:00
Alexander Medvednikov 87cff0386c time: gmt offset; macos syscalls 2020-01-01 10:09:19 +01:00
Alexander Medvednikov 4424f83470 os: disable write_bytes_at() and read_bytes_at() for now 2019-12-31 11:43:10 +00:00
Alexander Medvednikov f9cc419dba os: syscalls 2019-12-31 10:16:34 +00:00
mY9Yd2 6cee50afda os: fix tmpdir on unix 2019-12-30 05:25:26 +01:00
Delyan Angelov a0f32f5c29 tests: improved test output formatting 2019-12-30 05:23:54 +01:00
Abdullah Atta 4f173c8900 vpm: implement & improve install, search, update, remove 2019-12-30 05:22:28 +01:00
Nicolas Sauzede 4925aa594b os: fix deprecated os.dir to work as advertised 2019-12-28 08:49:27 +01:00
Don Alfons Nisnoni 06fba73ab9 os: add os.symlink() function 2019-12-27 19:10:06 +01:00
vitalyster 2f23ee4818 windows: cleanup after bootstrapping with unicode entrypoint 2019-12-27 19:07:31 +01:00
Delyan Angelov 6c16bac908 vfmt: it can now be used for _platform.v files too, no matter the host os 2019-12-27 17:59:04 +01:00
vitalyster 3f0f8bac49 windows: do not link gdi32/shell32 to console applications
* read os.args from argv when we have console
* dynamically load CommandLineToArgvW when we are GUI app
* link gdi32/shell32 in glfw module
2019-12-27 11:27:19 +03:00
Delyan Angelov 96fa15c125 v fmt: process .v files from a module too 2019-12-24 05:43:31 +03:00
Alexey dced76d1a4 os, filepath: reorganize functions 2019-12-23 13:09:22 +03:00
Alexander Medvednikov 848cd3cb3e run vfmt on http, net, sync, strconv 2019-12-22 01:57:50 +03:00
Alexander Medvednikov 6210984c97 run vfmt 2019-12-20 02:09:56 +03:00
Alexander Medvednikov 519f2990f2 vfmt: minor fixes 2019-12-19 10:02:47 +03:00
Delyan Angelov 4b7aa4ec09 freebsd: fix compilation 2019-12-18 13:21:20 +03:00
Abdullah Atta 20e73ff69a os: fix nreadelements naming 2019-12-18 08:22:52 +03:00
prime31 f00f9fbf5a os: fix bug where read_bytes would return only the first byte 2019-12-18 00:16:56 +03:00
Alexander Medvednikov b8f728590b string: last_index ?int 2019-12-12 21:54:48 +03:00
Delyan Angelov 1bb38a38bb tooling: add tools/oldv , for use with 'git bisect', or for testing with older V 2019-12-08 20:21:17 +03:00
Alexander Medvednikov 49f960aea5 fix some windows cast warnings 2019-12-07 22:42:20 +03:00
Alexander Medvednikov 9cba3bdf78 windows: WideCharToMultiByte() returns an int 2019-12-07 17:31:07 +03:00
Alexander Medvednikov 2fb7fba856 require `else` in `match` statements 2019-12-07 17:01:44 +03:00
Alexander Medvednikov f51784ee01 remove unnecessary casts everywhere 2019-12-07 15:51:00 +03:00
Delyan Angelov 353805e170 os: test is_link() 2019-12-06 12:09:35 +03:00
BilligsterUser 0a38b307cd os_test: use rmdir() to del dirs 2019-12-05 17:08:55 +03:00
Nicolas Sauzede 9d854c5df0 vlib: sdl module + tVintris example 2019-12-05 11:25:55 +03:00
Alexander Medvednikov e707ac4f28 test v -live message.v 2019-12-05 00:17:38 +03:00
Alexander Medvednikov 2144c162c4 os: is_link() 2019-12-04 23:53:11 +03:00
Alexander Medvednikov a57e29dfc5 os: replace dir_exists with is_dir; file_exists() => exists() 2019-12-04 23:17:45 +03:00
Alexander Medvednikov b2b34e18e4 use the new &C.Foo(0) cast 2019-12-04 12:19:32 +03:00
Alexander Medvednikov 2bafd41183 `&C.Foo(0)` cast to replace `&C.Foo{!}` hack 2019-12-04 12:13:17 +03:00
bogen85 a9aaa13a09 freestanding: sys_getuid, sys_waitid; minimal fork check; remove bare.S 2019-12-04 11:46:09 +03:00
Delyan Angelov eb20dd39b1 freestanding: init consts 2019-12-04 01:40:26 +03:00
Alexander Medvednikov 66f271f100 fix a string interpolation bug 2019-12-03 20:41:49 +03:00
Alexander Medvednikov f192429c8a $if mac => $if macos 2019-12-03 16:29:37 +03:00
Enrico Lefass 6d28a80bf8 haiku support (part 2) 2019-12-03 11:26:47 +03:00
Delyan Angelov ec15bfb7d1 v test v => v test-compiler 2019-12-01 12:50:13 +03:00
Alexander Medvednikov 3fea8f3de5 *char => charptr everywhere 2019-12-01 10:33:26 +03:00
Alexander Medvednikov 7e4799334f array: make left/right/slice private 2019-11-30 12:37:34 +03:00
Alexander Medvednikov 1bfcdaa2cc ci: test the new prebuilt packages 2019-11-29 19:14:26 +03:00
Delyan Angelov 7545ea709a enable alpine/musl CI tests 2019-11-28 11:46:52 +03:00
Unknown User 268a6dc6d9 add missing cfns 2019-11-25 04:35:41 +03:00
Alexander Medvednikov 24b40be548 default struct vals 2019-11-24 13:53:59 +03:00
Alexander Medvednikov 7cc21be7de clipboard: make compile on Linux 2019-11-24 13:22:57 +03:00
Alexander Medvednikov f4fe90ea6d C fn definitions on Linux 2019-11-22 19:00:56 +03:00
Alexander Medvednikov e9e931fe4a force C function definitions 2019-11-24 12:14:22 +03:00
Alexander Medvednikov 1f93bb5a9a os: windows fixes 2019-11-23 21:40:32 +03:00
Alexander Medvednikov cfd4f0c69c os: fix fullpath call on windows 2019-11-23 21:05:49 +03:00
Alexander Medvednikov ccb261f00d os: fix unreachable code 2019-11-23 21:00:20 +03:00
Alexander Medvednikov 0aa2196eec os: fix realpath on windows 2019-11-23 20:56:22 +03:00