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