Enzo
b083f4014b
fmt: fix multiple things and format most of the compiler ( #6631 )
...
Format expressions inside string interpolation like the rest (it used to be a+b instead of a + b, not too sure why)
Fix formatting some match branches when there were only one statement inside (it was inlined)
Fix parsing and formatting some comments edge case on struct field init. You should check out this test because the result is a bit different from before. I personally find it more logical but I would understand if the former format was to stay
Fix formatting of void-returning function signature
2020-10-15 22:12:59 +02: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
3c48a6e4ce
tests: rename _test.v files with dup names (temp workaround for highly parallel testing)
2020-10-14 18:25:26 +03:00
Alexander Medvednikov
1123b8259a
time: vfmt time/parse.v
2020-10-08 16:59:43 +02:00
spaceface777
b44620d065
time: use linux high-precision timers on Android as well ( #6476 )
2020-09-25 18:02:02 +03:00
Daniel Däschle
abc98c273c
parser: require assign on type alias ( #6477 )
2020-09-25 12:02:32 +02:00
Alexander Medvednikov
624f22e27e
all: mutability check (part 1); enable mutable sumtype args
2020-09-22 05:28:29 +02:00
Delyan Angelov
e2e683199d
time: do not panic on time.new_time({unix: 1608854400}).str()
2020-09-16 22:14:02 +03:00
Alexander Medvednikov
03327e5161
time: minor fixes + vfmt
2020-09-10 13:26:01 +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
Alexander Medvednikov
adafd24819
gen: auto_str_methods.v
2020-08-01 16:36:12 +02: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
8f23accc4e
time: add .format_ss_milli and .format_ss_micro methods
2020-07-21 11:58:33 +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
Uwe Krüger
8df6e59678
sync: add semaphores ( #5831 )
2020-07-15 10:22:33 +02:00
ka-weihe
df45488e09
cgen: fix warnings ( #5820 )
2020-07-14 00:16:31 +02:00
Delyan Angelov
78e1127d99
cgen: treat the main module like any other v module
2020-07-01 00:53:53 +02:00
Louis Schmieder
616b07204d
vweb: add cookies with expire date
2020-06-29 21:14:36 +02:00
spaceface777
5f21b152a7
tcc: support tcc on Windows
2020-06-14 23:15:12 +02:00
Alexander Medvednikov
7750ce5f60
time: fix relative()
2020-06-12 15:28:28 +02:00
Alexander Medvednikov
72fdb09e46
time: relative_short(); fmt: handle $vweb.html()
2020-06-11 20:26:49 +02:00
Tomas Hellström
2dc547a45c
time: fix iso8601 parser and utc time
2020-06-10 11:14:55 +02:00
Hungry Blue Dev
e649cf84e3
rand: reorganize: phase 2
2020-06-09 15:06:07 +02:00
Enzo Baldisserri
11b7b97311
parser: fail when assigning to _ with :=
2020-06-08 00:47:04 +02:00
Tomas Hellström
9c8769503f
time: add microsecond precision to Time struct
2020-06-07 16:19:09 +03:00
Uwe Krüger
076089d3c5
checker: apply stricter type checks to function args and return types
2020-06-01 21:15:59 +02:00
Delyan Angelov
ae8f7cf569
tests: fix some tests, that failed due to the stricter immutable checks
2020-06-01 18:24:38 +03:00
JalonSolov
b7dc5b2f7b
stopwatch: auto_start option, make pause cumulative
2020-05-30 10:20:54 +03:00
Uwe Krüger
013fdb8a4b
checker: restrict numeric promotions to cases where no data is lost
2020-05-27 05:42:48 +02:00
Uwe Krüger
fd4d28b7b6
tests: update for stricter type checks
2020-05-24 21:07:32 +02: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
pancake
b5bf0eeac5
time: add .no_delimiter format option
2020-05-08 21:23:26 +03:00
Delyan Angelov
ddb5a8e6e4
time: add specialized vpc_now_darwin to fix -os cross
2020-05-05 17:31:21 +03:00
Delyan Angelov
59525c8c93
tests: fix missing ? after v fmt run
2020-05-01 12:01:30 +03:00
Delyan Angelov
84785bbb59
tests: fix msvc transient failures when sleep_ms takes longer
2020-05-01 11:58:56 +03:00
Delyan Angelov
3608c81cb9
time: add stopwatch_test.v
2020-05-01 10:21:15 +03:00
Enzo Baldisserri
682838a0cf
checker: check array and fields mutability
2020-04-27 22:53:26 +02:00
Delyan Angelov
e523540f3a
profile: use specialized time__vpc_now
2020-04-26 22:14:54 +03:00
Enzo Baldisserri
3e68e429b6
checker: avert if else is unnecessary
2020-04-25 21:51:44 +02:00
Delyan Angelov
d6899788dd
time: add back vlib/time/time_linux.c.v
2020-04-24 15:28:16 +03:00
Delyan Angelov
117ec722a2
time: remove temporary time__linux.c.v workaround
2020-04-24 09:12:34 +03:00
Delyan Angelov
20637ae54c
time: restore building v on linux, till v.c is regenerated with `-os cross`
2020-04-24 09:00:07 +03:00
Major Taylor
25f2b171fc
time: Timer -> StopWatch; time.Duration
2020-04-24 07:33:25 +02:00
Major Taylor
be0a8794c2
time: add Timer; refactor benchmark to use Timer
2020-04-19 03:40:32 +02:00
lutherwenxu
dc4db87be3
vlib: use new filename format
2020-04-11 19:51:32 +02:00
Alexey
1fde205f97
time: return optional value directly
2020-04-11 18:56:39 +02:00
Daniel Däschle
b0dacef32b
time: change unix timestamp to u64
2020-04-07 03:35:47 +02:00
yuyi
8ba6e45d83
time: fix unix_time
2020-04-04 12:10:56 +02:00
joe-conigliaro
d048bf66b0
cgen: optimize/generalize typ method
2020-04-01 00:18:25 +11: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
2efc37947d
time: calc_unix => unix_time
2020-03-22 19:43:59 +01:00
radare
c21e976cad
builtin: do not use unsafe sprintf/vsprintf functions
2020-03-21 06:37:58 +01:00
Alexander Medvednikov
4b36098e07
cgen: 1 error left
2020-03-20 20:35:00 +01:00
Delyan Angelov
f89f83deb6
solaris: _solaris.v and #flag solaris (stage 1)
2020-03-20 20:20:01 +01:00
Alexander Medvednikov
b7a036945d
cgen: in [] optimization
2020-03-19 16:12:49 +01:00
Alexander Medvednikov
b2f05e56b8
cgen: fix tests
2020-03-19 11:23:05 +01:00
Joe Conigliaro
147ecc5e17
v2: time - prefix C struct & ast.TypeName to ast.Type
2020-03-04 01:06:21 +11:00
spaceface777
ef8c1203b4
cleanup: replace C for loops with range
2020-02-24 17:55:16 +01:00
Alexander Medvednikov
8f9979eb8d
fix time_windows.v
2020-02-07 23:11:15 +01:00
Alexander Medvednikov
d66bc24e7f
remove `as` casts for basic types
2020-02-07 22:10:48 +01:00
Alexander Medvednikov
9034b1fd08
v2: match cgen; use `as` for casting
2020-02-07 14:50:52 +01:00
Alexey
65744207fc
time: reorganize module
2020-02-06 14:19:44 +01:00
Alexey
91e181b14a
time: return optional value in `parse` and `parse_iso` functions
2020-02-06 10:22:00 +01:00
Alexey
a61c9c617d
time: use `_mkgmtime` and `timegm` to calculate unix time
2020-02-05 06:13:11 +01:00
Alexander Medvednikov
80daaff874
v2: scopes, or, in, hex
2020-02-04 17:44:39 +01:00
vitalyster
21b54723e4
time: fix timezone
2020-02-04 12:17:04 +01:00
Delyan Angelov
7b18e5d198
compiler: add 'use -- instead of -= 1'
2020-01-23 21:09:47 +01:00
Shun Sakai
c8c43a2475
update copyright year
2020-01-23 21:04:46 +01:00
nsauk
84438c0139
time: add str()
2020-01-20 15:06:15 +01:00
Swastik Baranwal
26374971ab
time: fix logic
2020-01-14 18:12:28 +01:00
Delyan Angelov
6d30697d9b
time: move time.random() to time.misc module
...
avoids importing rand to programs that do not need pseudo random generation).
2020-01-07 12:58:24 +01:00
Alexander Medvednikov
2f8969c604
time: Windows fix
2020-01-01 12:01:03 +01:00
Alexander Medvednikov
87cff0386c
time: gmt offset; macos syscalls
2020-01-01 10:09:19 +01:00
sh0f
3c17851200
time: add test for #3291
2020-01-01 08:00:23 +01:00
sh0f
a99f214a0f
time: fix error: array index out of range
2020-01-01 07:27:48 +01:00
Alexander Medvednikov
4d31d5882d
x64, v2 backends
2019-12-31 19:42:16 +01:00
lutherwenxu
286a0a1371
time: rewrite unix() function
2019-12-31 17:11:47 +01:00
Alexander Medvednikov
da5fb5dcbd
Revert "x64, v2 backends"
...
This reverts commit 81ae54d9bd
.
2019-12-31 13:23:12 +01:00
Alexander Medvednikov
81ae54d9bd
x64, v2 backends
2019-12-31 13:21:22 +01:00
yatsen1
137a473bb7
add time.parse_iso
2019-12-23 13:36:51 +03:00
yatsen1
d03f0ec294
fix time.parse()
2019-12-23 13:25:44 +03:00
Alexey
dacc129fd8
time: improve tests
2019-12-22 22:58:41 +03:00
Alexander Medvednikov
6210984c97
run vfmt
2019-12-20 02:09:56 +03:00
Alexander Medvednikov
f51784ee01
remove unnecessary casts everywhere
2019-12-07 15:51:00 +03:00
Alexander Medvednikov
b2b34e18e4
use the new &C.Foo(0) cast
2019-12-04 12:19:32 +03:00
Alexander Medvednikov
81d4f66fbb
string: make `index()` return `?int` instead of `int`/-1
2019-11-30 13:21:21 +03:00
Alexander Medvednikov
b38283dcf1
string: make left/right private
2019-11-30 12:06:17 +03:00
kevin70g
5536eb581c
time: C.timeval struct member definitions fix
2019-11-19 18:28:29 +03:00
Nicolas Sauzede
1dadf9d966
fix Windows warnings
2019-11-16 02:30:50 +03:00
Alexander Medvednikov
ffa6bcfff5
vfmt: handle comments
2019-11-13 11:54:22 +03:00
Alexander Medvednikov
f30d0ce667
parser: fix a bug with complex ref fn args
2019-11-11 04:56:13 +03:00
Enrico Lefass
a691cc857e
time: add new public functions for formatting
2019-11-01 02:13:03 +03:00
joe-conigliaro
59378dce46
compiler/vlib: replace substr/left/right with `[start..end]` everywhere
2019-10-27 10:03:15 +03:00
Mihael Dimoski
b6fa252fc9
time: make Time struct public
2019-10-25 22:04:25 +03:00
Enrico Lefass
fcead2f79e
time: squash three occasions of const(...) into one
2019-10-23 08:41:16 +03:00
Alexander Medvednikov
a76165828b
snake_case consts
2019-10-12 22:36:14 +03:00
Alexander Medvednikov
a9a73d9315
caching modules: almost there
2019-10-09 06:35:58 +03:00
Enrico Lefass
b0573bd4e4
time: add new public format function ddmmy()
2019-10-06 16:24:37 +03:00
Alexander Medvednikov
f45d3f07ed
fix 3 last C warnings and make sure no new warnings are introduced
2019-10-04 05:49:41 +03:00
Alexander Medvednikov
3db4d66824
operator | not defined on bool
2019-09-15 19:35:48 +03:00
Alexander Medvednikov
0e2c41e0f9
replace *Foo with &Foo everywhere
2019-09-01 22:51:16 +03:00
Alexander Medvednikov
d5d1b74f90
time: do not include <unistd.h> on windows
2019-08-30 01:10:29 +03:00
Alexander Medvednikov
3c5087902d
fix msvc build
2019-08-30 01:06:10 +03:00
Vitaly Takmazov
5124eae47d
msvc: check exit code
2019-08-28 13:26:27 +03:00
Delyan Angelov
aa438c7c3f
os: fix exec() and get_raw_line(); fix Windows tests and examples
2019-08-26 13:51:48 +03:00
Robin Martijn
754b8082fb
time/vlib: fix day_of_week() with sakamoto's algorithm
2019-08-25 23:35:01 +03:00
Alexander Medvednikov
031e7fe113
os: libproc.h on macos only
2019-08-24 02:53:11 +03:00
Alexander Medvednikov
7fd9827318
all: add missing includes
2019-08-24 02:48:47 +03:00
Alexander Medvednikov
d98c20466e
cc.v: build with "implicit-function-declaration" and fix declarations
...
required for the webassembly backend
2
2019-08-24 00:20:53 +03:00
Sylvio Tavares
0e798b4c51
time: fix rand()
2019-08-02 00:31:02 +02:00
Alexander Medvednikov
207bab5f79
generics, vweb, comptime codegen, etc
2019-07-29 18:24:48 +02:00
Emily Hudson
e25ea7f9dd
add MSVC C backend support; fix live code reloading on Windows; other Windows fixes
2019-07-23 23:23:13 +02:00
Alexander Medvednikov
7fa1f423e2
fix time_test.v
2019-07-14 17:08:14 +02:00
Alexander Medvednikov
6995cc0234
time: fix test_days_in_month()
2019-07-14 16:47:02 +02:00
nxshock
1ce295b683
time: days_in_month()
2019-07-14 16:43:57 +02:00
nxshock
b3e5c89ba9
time: add is_leap_year(year int)
2019-07-03 18:55:07 +02:00
Alexander Medvednikov
7a3b5c20dd
time: fix empty unix
2019-07-03 01:27:38 +02:00
Alexander Medvednikov
99a9a6572a
lots of Windows fixes and cross compilation for Windows
2019-07-01 16:51:17 +02:00
Alexander Medvednikov
b0c844415d
time.ticks() on Linux/macOS
2019-06-30 14:48:13 +02:00
Alexander Medvednikov
4594d78bd6
move all vlib modules to vlib/
2019-06-29 12:00:31 +02:00