Commit Graph

6685 Commits (eed6f7dbff5432c7312e5014628b7d789a465f85)

Author SHA1 Message Date
Alexander Medvednikov ad250523cd fix parser.fileis() 2019-12-11 21:42:22 +03:00
Alexander Medvednikov 6ffed854cc cgen.prepend_to_statement() 2019-12-11 20:51:58 +03:00
Alexander Medvednikov 47f9c02331 Revert "cgen.prepend_to_statement()"
This reverts commit 507c71ad80.
2019-12-11 20:37:39 +03:00
Alexander Medvednikov 507c71ad80 cgen.prepend_to_statement() 2019-12-11 19:33:54 +03:00
taojy123 28f76f10db vweb: fix empty post request blocking 2019-12-11 19:20:46 +03:00
Alexander Medvednikov 7dcd47369b option to pre-allocate a memory block 2019-12-11 18:41:25 +03:00
Delyan Angelov 13769f440f vweb: continue after bad http client connection; performance fixes
* Enable compiling vweb with -prod (by supressing 'declared and not used' warning about 'reset') .

* Fix http responses (now wrk is happy and shows no errors) by adding a Content-Length header.

* Fix -g compilation for urllib.v .

* vweb: println action= only in debug mode.

* vweb: max request headers counting fix.

* Make vweb.html get a 'ctx mut Context' param, just like the other methods.

* vweb: simplify add_header.

* Use a string builder for the most common html case so that the response http text can be send in one go.

* vweb: reduce _STR/string interpolation usage in the most common html response case.

* vweb: refactor common http response formatting into Context.send_response_to_client/2 method.
2019-12-11 17:32:54 +03:00
Alexander Medvednikov cfeec92826 use -Wunused-function for now 2019-12-11 15:51:12 +03:00
joe-conigliaro 3486118ab7 compiler: force custom struct .str() methods to be defined public 2019-12-11 03:24:26 +03:00
Alexander Medvednikov f286387647 vweb: secure HttpOnly cookies 2019-12-11 03:20:30 +03:00
Alexander Medvednikov cdfbb2978d strings: replace_each([]); orm: update 2019-12-10 23:57:49 +03:00
joe-conigliaro 4e69c40e12 parser: fix use blank ident as value 2019-12-10 21:35:59 +03:00
Alexander Medvednikov 9726e18c0a string: optimize replace() 2019-12-10 18:50:21 +03:00
joe-conigliaro 6d5e9f88f8 parser: allow enums to be used as bitfield flags 2019-12-10 06:16:47 +03:00
Alexander Medvednikov 0650d58818 vweb: readme: list some features of vweb 2019-12-10 00:16:39 +03:00
Alexander Medvednikov 51051cdf92 vweb: enable @ logic in the header + fix the example 2019-12-09 23:34:38 +03:00
Alexander Medvednikov 6f49d4c1d2 orm: bool support; vweb fixes 2019-12-09 23:20:29 +03:00
Delyan Angelov 32b0225079 remove os/time references from live programs, fix warnings 2019-12-09 18:53:17 +03:00
Alexander Medvednikov 8082a5e7f4 fix benchmarking stats 2019-12-09 17:25:56 +03:00
Alexander Medvednikov 75280bb54c fix int.str() memory bug 2019-12-09 16:41:13 +03:00
Delyan Angelov f68d9d1a16 live: always add os and time when compiling -live programs
Fixes fail when -live user programs do not use os and time.
2019-12-09 13:48:41 +03:00
sha0coder 7ffa315566 vlib/http: ssl handshake fix 2019-12-09 13:31:24 +03:00
Delyan Angelov ed5c9a20e5 update brew instructions for sdl dependencies 2019-12-09 03:18:08 +03:00
Alexander Medvednikov b2207c3d28 do not prepend module to external fn name 2019-12-09 00:24:50 +03:00
Alexander Medvednikov 4ebf53c6e9 allow non snake_case fn names in imported fns 2019-12-08 23:56:31 +03:00
prime31 faedebbb4e sdl: separate sdl module into multiple, dependent submodules 2019-12-08 23:30:38 +03:00
penguindark 9730164613 atoi: fix leading zeros in string to int conversion 2019-12-08 23:22:33 +03:00
Alexander Medvednikov 8f9b6ac248 '$foo()' string interpolation 2019-12-08 23:18:11 +03:00
Alexander Medvednikov 874ff42687 temporary fix of "v -g v.v" 2019-12-08 20:58:16 +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 4d1f721558 fix "" string interpolation bug 2019-12-08 20:06:00 +03:00
Alexander Medvednikov d58982a6f6 vweb: fix tests 2019-12-08 18:07:04 +03:00
Alexander Medvednikov 1c6f7180b2 vweb: fix form parsing 2019-12-08 17:37:23 +03:00
Alexander Medvednikov 02eee49d25 fix defer_test 2019-12-08 15:30:14 +03:00
Alexander Medvednikov c9886e6f42 use ++ everywhere 2019-12-08 14:34:51 +03:00
Alexander Medvednikov cc682eafe1 require ++ instead of += 1 2019-12-08 14:11:25 +03:00
Nicolas Sauzede 8bc94947e5 tvintris: fix else cases 2019-12-08 13:45:29 +03:00
bogen85 8178e1f7da freestanding: malloc/free with mm_alloc an mm_free
Added more array support that depends on malloc. Added string clone (that uses malloc). Added test for it. Eliminated stack allocated buffers from most of the unit checks.
2019-12-08 13:44:52 +03:00
Alexander Medvednikov 6ec626c5e9 improve invalid character errorrs 2019-12-08 12:57:40 +03:00
Alexander Medvednikov 8b0de95c0a improve the C struct check 2019-12-08 04:23:22 +03:00
Alexander Medvednikov 6ae51b2cbf handle unknown C types 2019-12-08 04:10:56 +03:00
Alexander Medvednikov 7adda3b71a vweb: fix get_cookie() 2019-12-08 01:48:49 +03:00
Alexander Medvednikov b1174428a5 vweb: fix redirect() 2019-12-08 01:05:57 +03:00
Alexander Medvednikov 30fc29fa6d fix csv test 2019-12-08 01:03:35 +03:00
Alexander Medvednikov 7069cd6ab5 a separate scope for x := opt, part 2 2019-12-08 00:45:42 +03:00
Alexander Medvednikov b26a0bde38 a separate scope for x := opt, part 1 2019-12-08 00:34:04 +03:00
Alexander Medvednikov 06a0f39f7b a separate scope for 2019-12-08 00:30:06 +03:00
Alexander Medvednikov dc2da1de98 fix V build 2019-12-08 00:27:24 +03:00
Alexander Medvednikov 8ebc2fe601 do not allow redefinition in `x := opt() {` 2019-12-07 23:09:48 +03:00
Alexander Medvednikov b79588dc69 handle bad value in `if x := opt() {` 2019-12-07 23:05:54 +03:00
Alexander Medvednikov 49f960aea5 fix some windows cast warnings 2019-12-07 22:42:20 +03:00
Alexander Medvednikov c019dd6f98 test assert in functions that return values 2019-12-07 22:42:20 +03:00
bogen85 751ba48bf5 freestanding improvements (exit, function checks)
Fixed exit for freestanding (as assert now uses it).
Running each function check now in a forked process so they can be killed or return other exit codes (and so each function runs, even if others crash)
2019-12-07 22:25:19 +03:00
Alexander Medvednikov d73586743b fix assert in functions that return values 2019-12-07 19:33:59 +03:00
Alexander Medvednikov b9a24e3b51 Revert "use stdint.h with msvc"
This reverts commit 93529031de.
2019-12-07 19:25:17 +03:00
Alexander Medvednikov 93529031de use stdint.h with msvc 2019-12-07 19:20:53 +03:00
Alexander Medvednikov 63ec3c0486 fix a wrong "0 character in a string literal" error 2019-12-07 18:19:48 +03:00
Alexander Medvednikov 7b0e378947 fix clipboard_linux.v 2019-12-07 18:16:19 +03:00
Alexander Medvednikov e1ad1794e3 fix readline_linux.v 2019-12-07 17:46:01 +03:00
Alexander Medvednikov 9cba3bdf78 windows: WideCharToMultiByte() returns an int 2019-12-07 17:31:07 +03:00
Alexander Medvednikov ad6adf327e vlib: fix missing `else{}` in match statements 2019-12-07 17:23:37 +03:00
Alexander Medvednikov 2fb7fba856 require `else` in `match` statements 2019-12-07 17:01:44 +03:00
Alexander Medvednikov a594e009f2 test high order function 2019-12-07 16:13:25 +03:00
Alexander Medvednikov f51784ee01 remove unnecessary casts everywhere 2019-12-07 15:51:00 +03:00
Alexander Medvednikov d7ccbba2c9 do not allow casting a type to itself 2019-12-07 15:31:56 +03:00
Alexander Medvednikov a854d396ff clipboard: fix mutability on macOS and Windows 2019-12-07 15:22:28 +03:00
Alexander Medvednikov c2814c1ada vlib: fix remaining mutability errors 2019-12-07 15:13:23 +03:00
Alexander Medvednikov 329485d4b6 vweb: fix headers and cookies 2019-12-07 15:04:05 +03:00
Alexander Medvednikov cc834dd7a7 parser: `x in []` is always false 2019-12-07 03:05:19 +03:00
João Victor Oliveira Couto 5a8c07dcf5 strings: builder: write_b() 2019-12-06 23:02:09 +03:00
Alexander Medvednikov 55f32fc413 more mutability fixes 2019-12-06 19:23:24 +03:00
Alexander Medvednikov e3b5d7fd7c rename if_st to if_statement 2019-12-06 19:21:26 +03:00
Alexander Medvednikov bf1b751f47 cli: update mutability 2019-12-06 19:12:01 +03:00
Alexander Medvednikov c8d111924d check unused and unmodified vars in all modules, not just main 2019-12-06 18:43:56 +03:00
Delyan Angelov 353805e170 os: test is_link() 2019-12-06 12:09:35 +03:00
Alexander Medvednikov aed22a57e3 fixed size array with const length (`[N]int`) 2019-12-06 02:41:03 +03:00
Alexander Medvednikov be323e2fb6 ci: set up pg database to test ORM 2019-12-06 02:11:39 +03:00
Alexander Medvednikov 71c0c4803f ORM fixes 2019-12-06 02:00:37 +03:00
Alexander Medvednikov 79b26b1654 use get_type2 in struct.v 2019-12-05 19:02:33 +03:00
Alexander Medvednikov cca650c655 better `foo must return (int, int)` error 2019-12-05 18:55:27 +03:00
Alexander Medvednikov cb46bf314e get_type.v 2019-12-05 18:48:39 +03:00
BilligsterUser 0a38b307cd os_test: use rmdir() to del dirs 2019-12-05 17:08:55 +03:00
Delyan Angelov 98374ea6fe CI: fix msvc (temporary work around dialogs poping up) 2019-12-05 17:08:18 +03:00
Alexander Medvednikov 4888d27b71 fix v -live on macOS 2019-12-05 14:40:14 +03:00
Alexander Medvednikov 2a1b0a8cae rename table.register_type2() 2019-12-05 14:24:25 +03:00
Nicolas Sauzede 2e30e1453d sdl: fix old vsdl2 references 2019-12-05 12:58:48 +03:00
Alexander Medvednikov 90e3ab8c1e debugging v -live message.v 2019-12-05 12:48:23 +03:00
Nicolas Sauzede 9d854c5df0 vlib: sdl module + tVintris example 2019-12-05 11:25:55 +03:00
Alexander Medvednikov 6dd1270539 builtin: remove an unnecessary malloc() call 2019-12-05 11:08:41 +03:00
Alexander Medvednikov 867f952d6b for: ranging through fixed size arrays 2019-12-05 02:17:17 +03:00
Alexander Medvednikov fb546f376e set max module depth to 5 2019-12-05 01:27:04 +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 fb237b9e53 parser: check types in `a in b` expressions 2019-12-04 22:17:24 +03:00
Alexander Medvednikov d9248e8d52 parser: fix a wrong index in an error 2019-12-04 13:36:35 +03:00
Delyan Angelov 9a6711fa1b compiler: c'str' now has type charptr 2019-12-04 13:34:06 +03:00
Alexander Medvednikov 40df0644ca fix all Foo{!} 2019-12-04 13:08:28 +03:00
Alexander Medvednikov e32cbfcca7 error on C.Foo{!} 2019-12-04 12:56:59 +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
Alexander Medvednikov 47f5e1178f -output-cross-platform-c for creating a single x-platform C file 2019-12-04 02:02:52 +03:00
Delyan Angelov eb20dd39b1 freestanding: init consts 2019-12-04 01:40:26 +03:00
Alexander Medvednikov c4a43633da i8, i18, u16 str() 2019-12-03 21:14:17 +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
Alexander Medvednikov ff80e3a5fa i8 print test + $if mac => $if macos 2019-12-03 16:09:43 +03:00
Delyan Angelov b907cf2179 sync/waitgroup: force sleeping for 1ms
fixes issues #2874 and #2961
2019-12-03 15:05:08 +03:00
Delyan Angelov 0a8d2d5dc7 compiler: guess cc kind for -prod builds, to know when to add -flto 2019-12-03 13:58:24 +03:00
Ulises Jeremias Cornejo Fandos b31ec4ca9a math: add factorial function (via factorial table) 2019-12-03 11:34:26 +03:00
Enrico Lefass 6d28a80bf8 haiku support (part 2) 2019-12-03 11:26:47 +03:00
Don Alfons Nisnoni f806e0f9e5 mysql: add error handling 2019-12-03 11:18:20 +03:00
Don Alfons Nisnoni 33793a869f mysql: make the struct public & update some code 2019-12-02 17:26:58 +03:00
Alexander Medvednikov c0bb88dfb0 allow # in webview module 2019-12-02 12:31:49 +03:00
Alexander Medvednikov 753e926356 debug v symlink error 2019-12-02 12:16:55 +03:00
Don Alfons Nisnoni 254afcb2d0 *C.char => charptr 2019-12-02 11:37:35 +03:00
penguindark 322733d59a encoding.utf8 fixes 2019-12-01 20:41:29 +03:00
radare 5ff387bbe4 strings: split_nth and add tests 2019-12-01 16:10:13 +03:00
Delyan Angelov ec15bfb7d1 v test v => v test-compiler 2019-12-01 12:50:13 +03:00
bogen85 854309a7d8 freestanding: add array support (stack only for now) 2019-12-01 11:27:36 +03:00
Alexander Medvednikov 3fea8f3de5 *char => charptr everywhere 2019-12-01 10:33:26 +03:00
Alexander Medvednikov 698c3823ee charptr fix 2019-12-01 10:11:29 +03:00
Alexander Medvednikov 0999273d32 CReserved => c_reserved; charptr 2019-12-01 09:56:53 +03:00
Alexander Medvednikov a23a4ed98a update all index() uses 2019-11-30 15:27:16 +03:00
Alexander Medvednikov 2651b8957a parser: fix unreachable code error in if a := opt() 2019-11-30 15:17:27 +03:00
Alexander Medvednikov 81d4f66fbb string: make `index()` return `?int` instead of `int`/-1 2019-11-30 13:21:21 +03:00
Alexander Medvednikov cc2bd0bb68 string: make substr private 2019-11-30 12:50:57 +03:00
Alexander Medvednikov 1a0b78ae2f fix the cli module 2019-11-30 12:44:50 +03:00
Alexander Medvednikov 7e4799334f array: make left/right/slice private 2019-11-30 12:37:34 +03:00
Alexander Medvednikov b38283dcf1 string: make left/right private 2019-11-30 12:06:17 +03:00
prime31 ff216e7d50 append module name for module search path 2019-11-30 11:17:37 +03:00
Alexander Medvednikov 68b4dab582 parser: another infinite loop fix 2019-11-30 10:37:28 +03:00
Alexander Medvednikov c00a7f3a5e parser: fix infnite loop with `fn foo(&) {}` 2019-11-30 10:21:58 +03:00
Alexander Medvednikov d71532b64e optimize `for c in str {` 2019-11-30 09:41:35 +03:00
Delyan Angelov c7f8f2175b move vlib/builtin/utf8_util.v to vlib/encoding/utf8/utf8_util.v 2019-11-30 08:52:37 +03:00
Emily Hudson 661ddf3d1e compiler: realpath before trying to basefilename 2019-11-30 08:01:31 +03:00
Alexander Medvednikov 850788c4bb parser: fix a bug with & and == 2019-11-29 23:18:10 +03:00
Alexander Medvednikov 4c11eb5ddc -bare => -freestanding 2019-11-29 22:49:05 +03:00
Alexander Medvednikov f724a956b3 parser: fix `a & b == c` precedence 2019-11-29 22:42:32 +03:00
Alexander Medvednikov 881584d04c V 0.1.23 2019-11-29 20:00:33 +03:00
Alexander Medvednikov 1bfcdaa2cc ci: test the new prebuilt packages 2019-11-29 19:14:26 +03:00
Alexander Medvednikov 71378b8041 parser: better syntax error for unexpected tokens 2019-11-29 17:06:49 +03:00
joe-conigliaro 11aaee685a generics: fix errors & simplify 2019-11-29 16:46:43 +03:00
penguindark 82d4a731f3 utf8 functions (to_lower etc) 2019-11-29 16:25:25 +03:00
Alexander Medvednikov 431568faad x64: fix off by one error in for loops 2019-11-29 12:33:36 +03:00
Alexander Medvednikov 9e19472c33 show an info message if a C compiler is not installed 2019-11-29 12:12:06 +03:00
bogen85 e31d892598 make _V_mret_ unique by putting p.token_idx in it 2019-11-29 11:11:53 +03:00
bogen85 729f9c3391 bare: add mm_alloc, mm_free
also split errno from return value in existing Linux syscall wrappers
update applicable syscall wrapper checks
2019-11-29 10:14:17 +03:00
Alexander Medvednikov 52d25336db x64: function calls; http: download_file() 2019-11-28 13:24:02 +03:00
prime31 208f67132d added -user_mod_path command line option to add a module search path 2019-11-28 13:04:57 +03:00
Delyan Angelov 7545ea709a enable alpine/musl CI tests 2019-11-28 11:46:52 +03:00
bogen85 3b7466a13d ci: rename multiret_with_ptrtype.v 2019-11-28 09:46:52 +03:00
bogen85 f6ec1b29f9 strconv: make string.int() stop parsing on invalid digit 2019-11-28 09:46:10 +03:00
bogen85 9374168b26 compiler: allow function expecting a void* to receive a byteptr 2019-11-28 09:44:43 +03:00
bogen85 e63300e286 temporary fix for issue #2897 2019-11-27 19:55:32 +03:00
sh0f dbaa37ea46 urllib: fix string length in escape() 2019-11-27 12:15:05 +03:00
れもん 584786d87c parser: fix `in` expression 2019-11-27 08:48:04 +03:00
Alexander Medvednikov a3b14e00a2 vweb fixes 2019-11-26 16:08:16 +03:00
Alexander Medvednikov cb8a19efaf vweb: bring back html() test 2019-11-26 09:34:09 +03:00
joe-conigliaro 3107618732 vweb: remove no longer needed special case & fix tmpl 2019-11-26 09:23:11 +03:00
ʇʞʌp 6349bd33d3 compiler: Allow `or` usage when assigning to struct fields. (#2893) 2019-11-26 09:07:35 +03:00
ʇʞʌp 79a02a4c09 parser: make `p.opt()?` work for methods 2019-11-26 09:04:59 +03:00
joe-conigliaro 385c045e5a don't add generic parsers to v.files 2019-11-26 09:04:11 +03:00
Alexander Medvednikov 8d241cc164 vweb fixes; ORM fixes; freeing strings 2019-11-26 07:47:16 +03:00
Ned Palacios bac3c0a63e compiler: add "modules/ " folder for searching local modules 2019-11-26 06:45:26 +03:00
ʇʞʌp 81d552038c parser: allow constant usage in assoc 2019-11-26 06:41:56 +03:00
bogen85 5c217b9e61 fix hexadecimal constants + freestanding fixes 2019-11-26 06:12:37 +03:00
joe-conigliaro 92f920b2b8 make errors from code parsed with statements_from_text show correctly 2019-11-25 22:22:40 +03:00
joe-conigliaro edd4706480 compiler: parser fixes for vweb 2019-11-25 15:29:55 +03:00
M 837af9b230 freebsd: backtrace 2019-11-25 13:54:56 +03:00
Delyan Angelov 30042ab54b cfns: fix some declarations 2019-11-25 13:54:07 +03:00
joe-conigliaro 7158a012c3 compiler: update to get vweb working 2019-11-25 13:48:25 +03:00
joe-conigliaro 475807566d
fix get_last_nl_from_pos when error is last token (#2882) 2019-11-25 20:58:22 +11:00
Delyan Angelov f7c103d5d2 compiler: remove legacy current workdir from module search 2019-11-25 11:32:11 +03:00
_leif ee52b4166f log: enum for logger level 2019-11-25 07:50:59 +03:00
Alexander Medvednikov 9bfea5e60b pg: define all C functions 2019-11-25 06:55:29 +03:00
Alexander Medvednikov feacc2441f socket: fix sizeof 2019-11-25 06:23:09 +03:00
Alexander Medvednikov a4ab7b14c1 wrap up struct default vals + tests 2019-11-25 05:59:58 +03:00
Unknown User 268a6dc6d9 add missing cfns 2019-11-25 04:35:41 +03:00
Delyan Angelov 5794594e19 compiler: fix vpath module search order regression 2019-11-24 19:39:30 +03:00
Enrico Lefass f496c1b27b haiku: adding support to v #1 2019-11-24 19:39:04 +03:00
Alexander Medvednikov 19b4cf66ac Windows should work now 2019-11-24 15:31:51 +03:00
Alexander Medvednikov 748e8b7ce4 more Windows definitions 2019-11-24 15:29:11 +03:00
Alexander Medvednikov b44cbc9b13 define RegQueryValueEx on Windows 2019-11-24 15:21:49 +03:00
Alexander Medvednikov 558024696c lots of C Windows function definitions 2019-11-24 15:16:19 +03:00
Abdullah Atta d4ae39348f eventbus: make it usable and add README 2019-11-24 14:27:50 +03:00
Alexander Medvednikov a74f4a661d fix C.GetStdHandle() on Windows 2019-11-24 14:07:14 +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 81c17e55a6 more C fn definitions 2019-11-24 13:16:11 +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
Alexander Medvednikov 1bd8c465d3 do not allow casting bool to int 2019-11-23 20:40:59 +03:00
Don Alfons Nisnoni 3a6ccf7f31 os: mkdir() error handling 2019-11-23 19:55:18 +03:00
Alexander Medvednikov 0fb0c43c0a pg: minor fixes 2019-11-23 19:48:00 +03:00
Dwight Schauer e724792a67 freestanding: add core linux syscalls and associated tests 2019-11-23 19:35:57 +03:00
joe-conigliaro 666509623e compiler: use token.pos instead of token.col, calculate col when needed 2019-11-23 19:31:28 +03:00
Delyan Angelov f42be0622e examples/game_of_life: add a GUI frontend; compiler: local modules relative to a main module 2019-11-23 16:33:25 +03:00
れもん 3d235169c8 parser: fix if expression 2019-11-23 14:25:57 +03:00
Abdullah Atta 0382331499 vlib: add eventbus module 2019-11-23 14:24:25 +03:00
Delyan Angelov 9b4bc0189b backtraces: cleaner looking backtrace output on linux 2019-11-23 14:22:55 +03:00
joe-conigliaro 9c1107f723 compiler: generics fix byteptr support 2019-11-23 10:06:14 +03:00
Alexander Medvednikov 57fbf0b8a9 map: fix `in` for deleted keys 2019-11-22 20:05:43 +03:00
Alexander Medvednikov 94318b1287 x64: use correct exe name and set +x 2019-11-22 19:09:14 +03:00
joe-conigliaro c11025f01f
compiler: clean up & optimize generics. add comments & support all param types (#2845) 2019-11-23 00:09:53 +11:00
Alexander Medvednikov 9712213f50 x64 machine code generation (ELF) 2019-11-22 14:33:22 +03:00
joe-conigliaro ab91733a28 small optimization with generics and use os.is_dir in vweb again 2019-11-22 10:55:20 +03:00
Dwight Schauer 4edade5067 compiler: fix a deferencing cast was causing a segfault 2019-11-22 09:11:06 +03:00
joe-conigliaro 8fbfceed30 compiler: generics - support across modules/files 2019-11-22 08:22:11 +03:00
Unknown User 7c802f31d3 parser: fix unused variable warning 2019-11-22 05:23:01 +03:00
Delyan Angelov d569f23e1c compiler: fix undeclared errors with [][]u16,u32,u64 2019-11-22 05:22:18 +03:00
gabixdev 76cd70c232 compiler: add -vpath and -vlib_path options 2019-11-21 15:06:19 +03:00
Tim Basel 597a6fead2 vlib: cli module 2019-11-21 15:03:12 +03:00
pfefferminz132 dcea76ff41 fix "v symlink" with relative paths 2019-11-21 04:34:08 +03:00
Alexander Medvednikov 8e32ef382a fix `v symlink` 2019-11-20 18:27:46 +03:00
Alexander Medvednikov 3e564a2506 parser: fix register() bug in interfaces 2019-11-20 18:19:13 +03:00
Alexander Medvednikov 759644ab36 examples: empty gg/freetype project 2019-11-20 07:26:52 +03:00
ʇʞʌp 26fb7e0821 compiler: emit Option_ typedef for fn args and struct fields 2019-11-20 00:58:31 +03:00
kevin70g 5536eb581c time: C.timeval struct member definitions fix 2019-11-19 18:28:29 +03:00
cloudsong 787f49b7a0 interface: enable calling interface with multi-args 2019-11-19 18:27:32 +03:00
joe-conigliaro 4bbed4f910 parser: fix default optional value 2019-11-19 17:47:49 +03:00
Alexander Medvednikov ddcff7e9c5 rand/pcg32: make the struct public 2019-11-19 14:26:18 +03:00
Delyan Angelov a620e66af5 compiler: add os.mv_by_cp and use it for the temporary files 2019-11-19 12:55:02 +03:00
Alexander Medvednikov 0cf232d692 parser: a better [] error message 2019-11-19 11:13:19 +03:00
PoLLeN fe81ccab20 asm.v: fix a small typo 2019-11-19 09:43:02 +03:00
Silvan Büdenbender 94b36250a1 bitfield: fix bit order 2019-11-19 03:32:44 +03:00
Alexander Medvednikov 20d6492775 os: make read_lines() return ?[]string 2019-11-19 02:25:55 +03:00
Alexander Medvednikov 52e3586be3 os: use mkdir() on Linux for now 2019-11-19 00:33:43 +03:00
Alexander Medvednikov c98db8c437 array: fix sort() for ints 2019-11-19 00:27:35 +03:00
Delyan Angelov c73f34cc5f net: make net.socket.write, net.socket.read_line more robust 2019-11-19 00:13:14 +03:00
Alexander Medvednikov 1ccd1979a4 vfmt: line comments fixes 2019-11-18 15:12:35 +03:00
Alexander Medvednikov 439bb0c5de foo()? test 2019-11-18 12:11:25 +03:00
Alexander Medvednikov 4c0269597d fix repl tests; change asm syntax a bit 2019-11-18 11:59:13 +03:00
Alexander Medvednikov f7c7ffecb3 makefile: pre-build builtin modules 2019-11-18 03:51:14 +03:00
Alexander Medvednikov e081791eaf fix repl tests 2019-11-18 02:34:49 +03:00
Jiten Palaparthi 32fbc2bdf3 remove pub for a private function in array.v 2019-11-18 00:43:23 +03:00
Don Alfons Nisnoni 78c2f8cab3 http: add some docs 2019-11-18 00:42:25 +03:00
Alexander Medvednikov 4fb0b49806 parser: fix the no fn main error in script mode 2019-11-18 00:40:59 +03:00
Alexander Medvednikov ffb72e855a vhelp: compress option 2019-11-17 15:35:05 +03:00
joe-conigliaro 6d7fe1f83c fix vtool used with paths w/spaces (win/nix) 2019-11-17 14:36:05 +03:00
Alexander Medvednikov 6ae8457f35 fix strings.Builder.str() 2019-11-17 07:05:13 +03:00
Delyan Angelov be7cf3e812 compiler: support storing temporary files under TMPDIR/v/
Fix for filepath.join not \0 terminating its result
2019-11-17 06:45:20 +03:00
Abdullah Atta 200fcd41ce vlib: add a clipboard module (Windows, macOS, X) 2019-11-17 05:40:03 +03:00
Alexander Medvednikov 2391c72e4b tcc: 64 bit by default 2019-11-17 01:14:05 +03:00
Alexander Medvednikov 6c51d0bb78 another inline asm test + disable on msvc 2019-11-17 01:07:21 +03:00
Alexander Medvednikov 2964bf9e23 inline assembly 2019-11-17 00:59:49 +03:00
Alexander Medvednikov 5a1de13e10 bare: fix str[idx] 2019-11-16 23:22:40 +03:00
Alexander Medvednikov 0c5854e371 add a c/raw string interpolation test 2019-11-16 22:17:01 +03:00
Swastik Baranwal 5d5268a53d expression: add a check for raw strings 2019-11-16 22:15:22 +03:00
Alexander Medvednikov 8d1eb759f7 fix v -o foo.c build module foo 2019-11-16 21:49:58 +03:00
Michiel Vlootman 328ccebf06 readme: fix link to vweb example 2019-11-16 19:58:55 +03:00
Alexander Medvednikov dc50ed69cf bare: fix str[idx] 2019-11-16 11:33:04 +03:00
Alexander Medvednikov a545ccb740 bare: stdint.h 2019-11-16 11:24:25 +03:00
Alexander Medvednikov 56fee6835a http: remove confusing comments and dead code 2019-11-16 10:32:17 +03:00
Alexander Medvednikov d1b8d34dd5 os_linux.v 2019-11-16 09:16:51 +03:00
Nicolas Sauzede 1dadf9d966 fix Windows warnings 2019-11-16 02:30:50 +03:00
Delyan Angelov e577b40743 compiler: add support for $if x32, x64, big_endian, little_endian 2019-11-15 16:14:28 +03:00
Alexander Medvednikov 96cde10696 C string literals (c'str'); bare builtin module; bare println() 2019-11-15 02:29:20 +03:00
Alexander Medvednikov bd97dc0134 os: realpath potential fix 2019-11-15 01:07:38 +03:00
Alexander Medvednikov a04c3bac83 CI: ubuntu-musl target 2019-11-15 00:46:40 +03:00
Alexander Medvednikov 9499275180 os: mkdir syscall on linux 2019-11-15 00:15:23 +03:00
Alexander Medvednikov 2dcb8b3bb0 bare: ArchLinux fix? 2019-11-14 22:18:22 +03:00
Alexander Medvednikov a8b5c00939 parser: allow << >> with enums 2019-11-14 22:14:14 +03:00
Delyan Angelov a329104dcb compiler: remove dead code (a tcc bug fix) 2019-11-14 11:57:28 +03:00
Alexander Medvednikov 34c4565f7c wrap up -bare 2019-11-14 11:11:52 +03:00
Alexander Medvednikov 6eaa2db533 fix V.js 2019-11-14 10:05:41 +03:00
Alexander Medvednikov 7d924679a6 []: update all examples and tests 2019-11-14 10:00:22 +03:00
Alexander Medvednikov 96b530cf85 update [] 2019-11-14 09:53:05 +03:00
Alexander Medvednikov 4a833d8151 parser: clean up all [] 2019-11-14 09:21:20 +03:00
Alexander Medvednikov 5df5f97daf parser: allow `arr = []` instead of `arr = []string` 2019-11-14 07:15:17 +03:00
Alexander Medvednikov 8d4ef822b6 1 2019-11-14 07:08:11 +03:00
Alexander Medvednikov 1d460c4d49 -bare option 2019-11-14 06:50:21 +03:00
Alexander Medvednikov b1fa0d25f0 foo()? syntax 2019-11-14 06:15:45 +03:00
BigBlack 72249ce889 fix duplicate #define generation 2019-11-13 23:35:14 +03:00
Alexander Medvednikov 861f2d4bc0 parser: skip $if windows etc blocks on a different os 2019-11-13 21:14:37 +03:00
Alexander Medvednikov 3b929cdd03 update repls tests 2019-11-13 20:40:01 +03:00
Silvan Büdenbender f30b0f1017 bitfield: add from_bytes() function 2019-11-13 19:48:00 +03:00
Alexander Medvednikov ffa6bcfff5 vfmt: handle comments 2019-11-13 11:54:22 +03:00
Steven Gay 51663520c8 MSVC backtrace 2019-11-13 11:05:06 +03:00
Alexander Medvednikov 10b0432eca parser: fix mutable map args 2019-11-12 22:35:53 +03:00
Don Alfons Nisnoni d732be64f6 array: update docs 2019-11-12 19:26:04 +03:00
Delyan Angelov 3643dcbf4b sqlite: use in-memory database in examples and tests 2019-11-12 19:25:30 +03:00
Delyan Angelov 32473eeafe net and http: more consistent error messages 2019-11-12 19:23:53 +03:00
BigBlack 99169ae4ff parser: ptr++,*(ptr+1) 2019-11-11 23:39:16 +03:00
Daren Liang bd34524a1c fractions: panic when reciprocal produces invalid fraction 2019-11-11 23:37:32 +03:00
Delyan Angelov cc81e9adfa v test v: cleanup more temporary files 2019-11-11 18:45:11 +03:00
BigBlack 0ab09a57f7 parser: multi-level pointers 2019-11-11 18:43:22 +03:00
Delyan Angelov de5b4f0497 fix tests for tcc, extract failing stuff to separate simpler files to ease debugging
* Fix compiling vlib/compiler/tests/fn_test.v with tcc.

* Extract failing tests from fn_test.v so that they are more readable and easier to debug.
2019-11-11 17:59:59 +03:00
Alexander Medvednikov e6775913aa simplify vfmt 2019-11-11 17:04:47 +03:00
Alexander Medvednikov d9b29bfb4e fix a bug in strings.Builder and wrap up vfmt 2019-11-11 08:24:28 +03:00
Alexander Medvednikov f2b1a8cb16 fix option_test.v 2019-11-11 07:09:07 +03:00
Alexander Medvednikov 8947717e3e fix the build 2019-11-11 06:19:18 +03:00
Alexander Medvednikov 0ad0a61db2 remove unnecessary empty lines in cgen 2019-11-11 06:02:01 +03:00
Alexander Medvednikov 730ef96398 another tcc fix 2019-11-11 05:33:19 +03:00
Alexander Medvednikov bf98eb55ee remove a test until a tcc bug is fixed 2019-11-11 05:27:30 +03:00
Alexander Medvednikov b3143bb559 parser: remove start_tmp() entirely 2019-11-11 05:22:38 +03:00
Daren Liang 91896af877 math: digits panic for invalid base 2019-11-11 05:21:47 +03:00
Alexander Medvednikov 887c94d9ba parser: second batch of start_tmp() 2019-11-11 05:14:54 +03:00
Alexander Medvednikov 00b3557ce1 parser: start removing start_tmp() 2019-11-11 05:06:24 +03:00
Alexander Medvednikov f30d0ce667 parser: fix a bug with complex ref fn args 2019-11-11 04:56:13 +03:00
Henrixounez 76c27c0b03 cli: create project helper 2019-11-11 00:48:56 +03:00
Alexander Medvednikov 3c4bb16ce9 disable dereferencing error for now 2019-11-10 20:32:11 +03:00
Alexander Medvednikov aea5b2e3b6 make unsafe dereferncing warning an error 2019-11-10 20:14:57 +03:00
Alexander Medvednikov ffa9646749 Revert "print_backtrace_skipping_top_frames: Implementation for MSVC "
This reverts commit d1e7a54f3a.
2019-11-10 20:01:19 +03:00
Alexander Medvednikov fdf6682254 require `unsafe` for dereferencing 2019-11-10 19:57:17 +03:00
Alexander Medvednikov c7f3413d70 more vfmt fixes 2019-11-10 19:49:19 +03:00
Don Alfons Nisnoni b9728c7af0 string: update split() method 2019-11-10 19:37:36 +03:00
Steven Gay d1e7a54f3a print_backtrace_skipping_top_frames: Implementation for MSVC 2019-11-10 19:34:53 +03:00
Henrixounez f8ab629986 readline: fix cursor position with prompt including ansi escape sequences 2019-11-10 19:33:21 +03:00
Alexander Medvednikov 3d4f85069f more vfmt fixes 2019-11-10 02:44:26 +03:00
kdmult 30481a36dc fix broken doc on windows
* replace hardcoded slash with os.path_separator

* compile only, no link, if building a module
2019-11-09 23:49:15 +03:00
Daren Liang e6c9c7d571 parser: check type for all integer only assignment operators 2019-11-09 21:57:36 +03:00
Alexander Medvednikov b1d2c6c730 lots of vfmt fixes 2019-11-09 20:42:29 +03:00
ylluminate aef02f61e1 V UI readme: Add web (JS/WASM) to platform list 2019-11-09 20:37:31 +03:00
Daren Liang c607246218 parser: add xor type check 2019-11-09 20:36:56 +03:00
Toby Webb ab37081f02 add production mode tests
Due to the inability to detect warnings in REPL tests, I implemented running something very similar, but with the -prod flag enabled.
(See https://github.com/vlang/v/pull/2536)

There is also a minor change in os.walk_ext to not add duplicated path separators:
/path//file.ext -> /path/file.ext
2019-11-09 19:35:26 +03:00
Alexander Medvednikov f33d8bd596 do not generate interface tables for unused interfaces 2019-11-09 18:13:51 +03:00
Alexander Medvednikov 32fec2c26c fix interfaces on msvc 2019-11-08 23:28:32 +03:00
Alexander Medvednikov cac719c078 []interface 2019-11-08 22:08:02 +03:00
Alexander Medvednikov 6f95be60a1 cc.v: use msvc on Windows by default if gcc is not installed 2019-11-08 21:15:26 +03:00
Daren Liang c4ff0d565b parser: check mul and div operations on str variables 2019-11-08 20:26:08 +03:00
Delyan Angelov bc826173cc fix $if msvc conditional define 2019-11-08 16:00:55 +03:00
Alexander Medvednikov 7a8e7b4db8 fix interface methods that return a value 2019-11-08 07:43:44 +03:00
Alexander Medvednikov 985fb91ee8 rewrite interfaces 2019-11-08 07:16:53 +03:00
Daren Liang f5438477df parser: check mul and div operations on strings 2019-11-08 04:32:25 +03:00
Nicolas Sauzede db4a7edf3a fix threads to actually return a voidptr 2019-11-08 03:09:02 +03:00
Nicolas Sauzede 5a8c3daba3 os: fix stat mode signedness warning 2019-11-08 03:02:02 +03:00
Alexander Medvednikov 27f6b2dd73 table: fix float/integer cast bug 2019-11-08 02:04:00 +03:00
Alexander Medvednikov f579376638 table: improve check_types() 2019-11-08 01:48:36 +03:00
Nicolas Sauzede 2f5de11c22 fix byteptr warning 2019-11-08 01:30:07 +03:00
Nicolas Sauzede 3a99217592 fix pthread 3rd arg voidptr warning 2019-11-08 00:58:49 +03:00
Delyan Angelov a44ba0b8a2 bignum module wrapper for kokke/tiny-bignum-c 2019-11-07 22:04:18 +03:00
pfefferminz132 b9e7d02462 math: make ceil return an f64 2019-11-07 19:54:51 +03:00
lorenzo pirro 6bcd0fd9cc optimize reserved type check 2019-11-07 18:45:38 +03:00
Alexander Medvednikov 6d98203572 fix "undefined" error 2019-11-07 17:57:54 +03:00
Daren Liang df6bdf59e6 parser: fix mod assign type check 2019-11-07 17:49:40 +03:00
Alexander Medvednikov fbd71e1539 expression.v 2019-11-07 17:48:48 +03:00
vitalyster 2d3944250f tools: show C output when tool can not be compiled 2019-11-07 16:17:32 +03:00
vitalyster 86447c1301 windows: use CreateProcess for os.exec 2019-11-07 16:01:17 +03:00
lorenzo pirro d57c0cfde0 parser: fix builtin as name not allowed 2019-11-07 06:00:48 +03:00
Nicolas Sauzede c8de2c0bd4 fix i64 overflow warning 2019-11-07 06:00:00 +03:00
Alexander Medvednikov c9d0bd7404 print true and false instead of 1 and 0 2019-11-07 00:07:50 +03:00
Alexander Medvednikov fdd4afa392 for.v and match.v; do not allow arrays in `match` 2019-11-06 23:30:08 +03:00
lorenzo pirro bd18f50c8a os: cp_r fn to copy files recursively 2019-11-06 23:05:35 +03:00
vitalyster 8dbeab9a7b make V work on Windows 7 2019-11-06 23:04:40 +03:00
Alexander Medvednikov e266c8a750 urllib: test str() 2019-11-06 22:35:59 +03:00
Abdullah Atta c4e9f09f0f urllib: crash when converting URL to str 2019-11-06 22:34:33 +03:00
Alexander Medvednikov 7c70f3df93 parser: & and | type check 2019-11-06 21:20:37 +03:00
Alexander Medvednikov 0f0bef2d33 parser: more typing checks 2019-11-06 20:47:03 +03:00
Alexander Medvednikov 75510e2ea1 remove `last` test 2019-11-06 18:19:03 +03:00
Alexander Medvednikov 73134035a9 parser: remove `last` 2019-11-06 18:17:14 +03:00
Alexander Medvednikov 6a812f7293 mod operator tests 2019-11-06 18:04:48 +03:00
Alexander Medvednikov 6afd7d50a6 parser: fix mod type check 2019-11-06 17:52:35 +03:00
Alexander Medvednikov ca259331e4 parser: fix % type check 2019-11-06 17:35:32 +03:00
Alexander Medvednikov f6d06fcda2 update tests and examples after the mutability fix 2019-11-06 06:57:04 +03:00
Alexander Medvednikov b720bb2e77 parser: mark var as changed only if the receiver is mutable 2019-11-06 06:48:57 +03:00
Alexander Medvednikov 8dd335295e new enum step 2 2019-11-06 06:26:04 +03:00
Alexander Medvednikov 4d876d1980 new enum step 1 2019-11-06 06:16:12 +03:00
Alexander Medvednikov 855a736a2c parser: C enums + another enum simplification 2019-11-06 05:14:34 +03:00
Daren Liang 91bb969ed1 stats: use c style for loop 2019-11-06 04:45:05 +03:00
Alvydas Vitkauskas af81b02ef0 parser: fix shift-assign to work with all integer types 2019-11-06 03:37:31 +03:00
Alvydas Vitkauskas 3080959084 parser: make let shift operators work with all types 2019-11-06 01:02:50 +03:00
Alexander Medvednikov 1b5f724df0 #include warning 2019-11-06 00:32:15 +03:00
Alexander Medvednikov 7fc7c05e9d parser: do not all string casts 2019-11-05 20:41:02 +03:00
Alexander Medvednikov b91a537c35 it's better to do this locally and update v.c manually 2019-11-05 20:27:53 +03:00
Alexander Medvednikov 1687afba9f remove locale.h and unistd.h 2019-11-05 20:05:25 +03:00
Alexander Medvednikov b929543782 remove string.h 2019-11-05 20:00:00 +03:00
Alexander Medvednikov 62f54d9d65 remove signal.h 2019-11-05 19:57:53 +03:00
Alexander Medvednikov dc1ca31071 enable temporary fns.h with C defs 2019-11-05 19:34:56 +03:00
vitalyster eb069833a8 compiler: detect Cygwin and show error message 2019-11-05 19:33:24 +03:00
Alexander Medvednikov c5d868c928 start the C header removal process 2019-11-05 19:24:00 +03:00
Alexander Medvednikov 5306c14d78 parser: nothing can be cast to bool 2019-11-05 18:58:42 +03:00
Alexander Medvednikov 07e3699700 parser: do not allow number => bool casts 2019-11-05 18:56:19 +03:00
Alexander Medvednikov 883041fbcc os: replace FILE with voidptr to remove stdlib.h dep 2019-11-05 18:42:10 +03:00
vitalyster 67f68df8a8 compiler: display error when MinGW configuration is outdated 2019-11-05 18:39:44 +03:00
Alexander Medvednikov b2f8944b1f fix V.js 2019-11-05 18:18:10 +03:00
Alexander Medvednikov 425c9ce401 a special `last` variable in for loops (experimental) 2019-11-05 17:17:55 +03:00
aliczin 53981c8747 compiler: supress windows (MSVC) warnings 2019-11-05 14:09:33 +03:00
Alexander Medvednikov f60d44eda9 --enable-globals 2019-11-05 02:43:52 +03:00
Alexander Medvednikov f8d14a216b parser: print backtrace only in debug mode 2019-11-05 02:30:51 +03:00
Alexander Medvednikov 0a6840b6a6 improve a minor info message 2019-11-05 01:32:21 +03:00
Alexander Medvednikov ee4db9f96d parser: $if clang, $if msvc, $if mingw 2019-11-04 20:14:34 +03:00
joe-conigliaro b8b72580a7 compiler: typo detection - fix error & slightly optimize function 2019-11-04 14:35:28 +03:00
joe-conigliaro 5d16f30a3d parser: add error when trying to assign from a function that does not return a value 2019-11-04 14:35:10 +03:00
Henrixounez b5d457b5ce readline: catch siguser signal to reset tty 2019-11-04 05:05:12 +03:00
joe-conigliaro 5f1e634d82 compiler: improve typo detection, support all types and fn definitions 2019-11-04 04:59:28 +03:00
joe-conigliaro a6a233df6b
compiler: remove unneeded blank ident assignment (#2634) 2019-11-04 10:59:18 +11:00
Daren Liang e3d8ab5849 os: do not allow || and \n in system/exec 2019-11-04 02:41:15 +03:00
joe-conigliaro df5faf35e5 compiler: optionals default value 2019-11-04 02:38:49 +03:00
Alexander Medvednikov 4e64a58ac1 scanner: fix string interpolation in raw strings 2019-11-03 23:57:26 +03:00
Alexander Medvednikov 3449a8bc4d os: do not allow ; and && in system/exec 2019-11-03 23:13:56 +03:00
Trivaxy 8de2f00294 os: add windows cp 2019-11-02 22:37:29 +03:00
Alexander Medvednikov 56e1dac03a Revert "vtools: add an info message". This broke repl tests.
This reverts commit 3b3f0eb507.
2019-11-02 14:52:12 +03:00
Alexander Medvednikov 3b3f0eb507 vtools: add an info message 2019-11-02 13:27:09 +03:00
Alexander Medvednikov 3097ba93d7 vtools: do not use -prod, it slows things down too much 2019-11-02 13:26:03 +03:00
joe-conigliaro 4120982da1 compiler: add varg str method & varg / parser optimizations 2019-11-02 13:17:56 +03:00
joe-conigliaro 7b1993b1e4 vlib: filepath module 2019-11-01 19:29:51 +03:00
joe-conigliaro fe9d884d90 parser: fix forwarding vargs & multiple call varg len fix 2019-11-01 19:14:16 +03:00
Alexander Medvednikov de8297c983 examples/users.v: fix imports 2019-11-01 19:02:38 +03:00
Alexander Medvednikov 80ba8f07b8 more ui vh fixes 2019-11-01 18:03:24 +03:00
Delyan Angelov 59efd42483 tools/vget => tools/v , search, install, etc
* compiler: rename vget to tools/vpm, implement draft support for v vpm search, v vpm update, v vpm install, v vpm remove, v vpm help .

* compiler: use "v pm" instead of "v vpm" to reduce the redundancy of typing, as suggested by slapden


* Use 'v install modulename', 'v search keywords', 'v update modulename', 'v remove modulename' instead of the longer 'v pm install modulename' etc.
2019-11-01 15:19:04 +03:00
Alexander Medvednikov a83e233dea building modules can now be done from any directory 2019-11-01 14:16:58 +03:00
Delyan Angelov 15d4f68af6 compiler: pass -no-pie in debug builds so that backtraces work 2019-11-01 13:20:26 +03:00
Delyan Angelov e15abb3de0 compiler: move `v up` implementation to tools/vup.v 2019-11-01 13:14:59 +03:00
Danil-Lapirow 15f971ece7 parser: fix broken methods with vargs 2019-11-01 13:03:14 +03:00
Delyan Angelov bfe039fcba compiler: extract testing to tools/vtest.v 2019-11-01 02:15:03 +03:00
Enrico Lefass a691cc857e time: add new public functions for formatting 2019-11-01 02:13:03 +03:00
Alexander Medvednikov f8f7881f89 thirdparty/ui for macOS (temporary) 2019-11-01 01:14:08 +03:00
Nicolas Sauzede 71450828bd fix missing protos for popen and backtrace_symbols 2019-11-01 00:52:08 +03:00
Alexander Medvednikov e07d3c7827 ui vh hack 2019-11-01 00:47:11 +03:00
Alexander Medvednikov 91df08f56d cc: experimental -fast option for tcc/codegen in the future 2019-11-01 00:37:24 +03:00
Alexander Medvednikov 987f5fd2a1 string: bring back strconv 2019-11-01 00:28:52 +03:00
Alexander Medvednikov ae696e7ccb Revert "Revert "array: fix and document array functions""
This reverts commit b1eb9d6b15.
2019-10-31 21:50:20 +03:00
Alexander Medvednikov 4c96ca4e62 string: remove strconv dep 2019-10-31 21:50:11 +03:00
Alexander Medvednikov 128d37c671 vh fixes for the UI module 2019-10-31 21:26:12 +03:00
Alexander Medvednikov 5be8b47e1c cc.v: disable tcc on android 2019-10-31 20:32:34 +03:00
Alexander Medvednikov b1eb9d6b15 Revert "array: fix and document array functions"
This reverts commit 7fa33fc250.
2019-10-31 20:29:58 +03:00
Henrixounez 55f6e810cf repl: moved as a tool and using readline 2019-10-31 19:01:04 +03:00
ytakahashi 114953f28d match: fix typo and remove arrows 2019-10-31 18:58:19 +03:00
Alvydas Vitkauskas 7fa33fc250 array: fix and document array functions 2019-10-31 15:46:50 +03:00
Don Alfons Nisnoni 0c229aacdd readline: use new enum syntax 2019-10-31 14:06:48 +03:00
joe-conigliaro 5acdf425ab parser: move duplicate code into single function 2019-10-31 13:49:57 +03:00
Alexander Medvednikov b1730b768d remove a println() 2019-10-31 12:15:45 +03:00
Alexander Medvednikov d5cf4d6fd5 compiler: -o dir/file: create a new directory if it doesn't exist 2019-10-30 20:53:34 +03:00
Amal Shaji e8d34002e1 map: fixed deletion of non-existent keys 2019-10-30 20:19:59 +03:00
Alexander Medvednikov 5da3c49497 json: rename jsgen.v to json_gen.v 2019-10-30 19:45:33 +03:00
Alexander Medvednikov 6b4dcb916b ci: bring back Vid build 2019-10-30 19:36:54 +03:00
Alexander Medvednikov 316cf025ae arrays: fix range 2019-10-30 17:30:49 +03:00
Alexander Medvednikov a9ca9f45af fix enum/match combo in sync_windows.v 2019-10-30 17:29:05 +03:00
Alexander Medvednikov 9044f1437c v doc 2019-10-30 17:07:41 +03:00
Alexander Medvednikov 08c1f408d3 fix sync_windows.v 2019-10-30 16:43:40 +03:00
Alexander Medvednikov 2bd2501dc0 fix new enums in tests 2019-10-30 16:38:47 +03:00
Alexander Medvednikov aa39451c8b arrays.range(min, max) 2019-10-30 16:21:57 +03:00
Alexander Medvednikov 96f7620628 instead of `Enum.foo` require `.foo` if it's enough + some UI fixes 2019-10-30 15:48:33 +03:00
Delyan Angelov ba6cc5df2a compiler: print asserted source line on failure 2019-10-30 12:15:33 +03:00
Don Alfons Nisnoni ee6ec3faf3 crypto: fix a typo 2019-10-29 19:59:55 +03:00
sunnylcw 79279e01f5 sqlite: add flags for FreeBSD to pass sqlite test 2019-10-29 17:13:56 +03:00
lorenzo pirro d42c53346d array: eq() for builtins (byte, string, int, i64, f32) 2019-10-29 14:26:00 +03:00
Danil-Lapirow f161ff9db5 parser: fix tmp is already started issue 2019-10-28 23:50:58 +03:00
ytakahashi 6a609cb046 log: make const/struct public 2019-10-28 18:53:02 +03:00
Delyan Angelov 3950b10d2a compiler: make Fn struct public 2019-10-28 16:37:18 +03:00
Alexander Medvednikov 9e9935acbc math: make consts and structs public 2019-10-28 16:33:36 +03:00
Alexander Medvednikov 33b5afa893 V 0.1.22 2019-10-28 13:12:44 +03:00
Delyan Angelov 15deaa7eb6 compiler: improve errors when building thirdparty .o files 2019-10-28 12:43:57 +03:00
Alexander Medvednikov 44b99bc299 ci: don't run sqlite test on windows for now 2019-10-28 12:32:03 +03:00
Alexander Medvednikov a7568ea54b ci: install libsqlite package 2019-10-28 11:45:27 +03:00
Alexander Medvednikov 373873d71f fix sqlite test 2019-10-28 10:40:48 +03:00
Danil-Lapirow a2bafaa254 parser: add error on array comparison 2019-10-28 10:26:42 +03:00
Alexander Medvednikov c5fa99c66c darwin not supported yet 2019-10-28 10:25:56 +03:00
Alexander Medvednikov d54bbc8737 fix sqlite test 2019-10-28 10:21:32 +03:00
Alexander Medvednikov 1ac1626357 sqlite example 2019-10-28 00:10:58 +03:00
Alexander Medvednikov 16c4415d4c a very simple sqlite driver 2019-10-28 00:02:52 +03:00
Alexander Medvednikov 1390a39053 clean up switch tokens 2019-10-27 22:42:52 +03:00
Don Alfons Nisnoni 8358528888 string: add some docs 2019-10-27 22:29:55 +03:00
Alexander Medvednikov 9cddf22fff glfw: make two structs public 2019-10-27 21:23:33 +03:00
Alexander Medvednikov 9c5abd575f parser: remove switch_statement() 2019-10-27 13:03:40 +03:00
Alexander Medvednikov e890f682e2 [if] fn: remove unused expression 2019-10-27 12:42:31 +03:00
Alexander Medvednikov 5946f67328 final switch => match 2019-10-27 12:38:50 +03:00
Don Alfons Nisnoni acaf66ac80 readline: switch => match 2019-10-27 12:38:36 +03:00
Alexander Medvednikov 293cf18266 enable [if vfmt] 2019-10-27 12:16:33 +03:00
Alexander Medvednikov d00fdca38f [if vfmt] for fgen() functions 2019-10-27 12:13:08 +03:00
joe-conigliaro d81b0675f0 array: bring back left & right method tests 2019-10-27 12:05:19 +03:00
Alexander Medvednikov efdadc3758 tetris/glfw: fix warnings 2019-10-27 10:13:40 +03:00
joe-conigliaro 59378dce46 compiler/vlib: replace substr/left/right with `[start..end]` everywhere 2019-10-27 10:03:15 +03:00
Don Alfons Nisnoni ed55826686 log/net: switch => match 2019-10-27 09:45:03 +03:00
Nicolas Sauzede 7ba5248e56 os_win.v: switch => match 2019-10-27 09:36:40 +03:00
joe-conigliaro a075ce160e compiler: add `[..2]` & `[2..]` support for slices 2019-10-27 09:36:04 +03:00
Alexander Medvednikov e80cf185b9 allow public unions and interfaces 2019-10-27 02:23:52 +03:00
Alexander Medvednikov ef022c2326 [if vfmt] function attribute for skipping functions for performance 2019-10-27 02:11:31 +03:00
Alexander Medvednikov ee51313e2c test array and string slices 2019-10-27 01:37:29 +03:00
Alexander Medvednikov dd12a85429 array: fix a regression 2019-10-26 22:26:30 +03:00
Alexander Medvednikov 570a7aaaf3 a[start..end] slicing 2019-10-26 22:20:13 +03:00
Don Alfons Nisnoni 678ce54e70 os: document functions 2019-10-26 20:21:07 +03:00
Delyan Angelov 2d05c906d5 base64: some optimizations
* Add a test for the base64 encoding/decoding of long strings (i.e. mainly memory allocation).

* Make vlib/encoding/base64/base64_memory_test.v resemble more test.v from https://github.com/kostya/benchmarks .

* base64: some optimizations, also add base64.encode_in_buffer and base64.decode_in_buffer .

* Fix tests passing static strings.

* Reduce time needed for base64_memory_test.v .

* Optimize encoding.base64.Index access too (it is static), which speeds up decoding.
2019-10-26 18:20:36 +03:00
vitalyster 272b0aec82 os: fix os.get_error_msg on Windows 2019-10-26 14:58:05 +03:00
Alexander Medvednikov 6944161b15 array: clean up filter() 2019-10-26 14:53:55 +03:00
Alexander Medvednikov 70c9565607 array: fix map() return type and handle []bool 2019-10-26 14:49:36 +03:00
Alexander Medvednikov f40d672a12 array: map() test 2019-10-26 14:32:56 +03:00
Alexander Medvednikov 4ef10c92f4 array: map() method 2019-10-26 14:28:11 +03:00
Alexander Medvednikov f6f5b8cfb1 bring back string.h for now 2019-10-26 11:51:22 +03:00
Alexander Medvednikov fbd41eacba remove string.h include 1 2019-10-26 11:43:25 +03:00
Alexander Medvednikov ef45a87882 remove string.h include 2019-10-26 11:29:56 +03:00
Alexander Medvednikov 58f0503f6d cc.v: bring back implicit fn declaration 2019-10-26 11:09:20 +03:00
Alexander Medvednikov cba12d0106 macos libproc fix 2 2019-10-26 02:19:14 +03:00
Alexander Medvednikov 203f967677 macos libproc fix 1 2019-10-26 02:16:37 +03:00
Alexander Medvednikov 7de95a642e remove more C headers 2019-10-26 02:08:46 +03:00
Alexander Medvednikov dc2c62807a string: faster int() 2019-10-25 23:41:18 +03:00
Alexander Medvednikov 5510327d70 array_test.v: str() test 2019-10-25 22:40:52 +03:00
Alexander Medvednikov 8d2111169a fix V.js methods and duplicate .str() in arrays 2019-10-25 22:38:39 +03:00
Mihael Dimoski b6fa252fc9 time: make Time struct public 2019-10-25 22:04:25 +03:00
Delyan Angelov 8364130a1f compiler: implement error_with_code(s string, code int)
Make available the integer code as errcode to callers/unwrappers
2019-10-25 22:03:42 +03:00
Alexander Medvednikov 9c5a359de3 fix V.js methods after the recent generics fix 2019-10-25 21:57:32 +03:00
Simon Heuser 280c7d396c generics: generic methods, cast to T 2019-10-25 21:32:27 +03:00
Alexander Medvednikov 7d02eccbce cc.v: fix tcc check 2019-10-25 20:11:53 +03:00
Alexander Medvednikov c30f16a038 parser: add ; after a goto label 2019-10-25 18:53:45 +03:00
Alexander Medvednikov 090e1a87b7 linux: use gcc if tcc fails 2019-10-25 18:49:49 +03:00
Alexander Medvednikov be0830b24f builtin: do not use backtrace with musl 2019-10-25 18:38:47 +03:00
Alexander Medvednikov c7e6d379da $if glibc { 2019-10-25 18:33:02 +03:00
Alexander Medvednikov ef9cae6dc0 bring back backtrace 2019-10-25 17:59:41 +03:00
Alexander Medvednikov a83aa28a67 urllib: switch => match 2019-10-25 17:54:34 +03:00
Alexander Medvednikov d0cbb4041b disable backtrace for now 2019-10-25 17:38:07 +03:00
Delyan Angelov 32b3611026 sync: new_mutex() and new_waitgroup() 2019-10-25 17:24:40 +03:00
Alexander Medvednikov e04c4ad852 remove execinfo.h include 2019-10-25 17:20:49 +03:00
joe-conigliaro 7d418e9105 parser: cleanup & reuse 2019-10-25 16:34:12 +03:00
Alexander Medvednikov 784847cf18 make V compile 2019-10-25 16:06:21 +03:00
Alexander Medvednikov ea3f9b5b9a remove execinfo.h header 2019-10-25 12:13:38 +03:00
Alexander Medvednikov 4e21e9ed44 minor V.js fixes 2019-10-25 12:13:38 +03:00
Toby Webb c456ba6bde parser: fix incorrect unused var message 2019-10-25 10:27:43 +03:00
joe-conigliaro 4443fef6c3 compiler: add const to typo suggestions + small typo format update 2019-10-25 10:26:14 +03:00
Alexander Medvednikov d4c1bba856 fix V.js 2019-10-24 22:58:01 +03:00
Alexander Medvednikov 892d1c6aab vweb: first step to revive it 2019-10-24 22:46:58 +03:00
Simon Ernst 2032da7fe2 os: make Result public 2019-10-24 21:58:28 +03:00
Alexander Medvednikov 36eb1b77d0 compiler: remove remaining switch statements and show a warning 2019-10-24 19:26:51 +03:00
Alexander Medvednikov 753fe32793 parser: remove more switch statements 2019-10-24 16:02:24 +03:00
Alexander Medvednikov 695245d307 struct.v 2019-10-24 15:56:10 +03:00
Alexander Medvednikov bac690bbc8 parser: replace the switch statement in `parse()` 2019-10-24 15:50:46 +03:00
Alexander Medvednikov 3a929faf26 enums: make `in` work without specifying the full type 2019-10-24 15:41:34 +03:00
Alexander Medvednikov 560ae9352c nice enum works 2019-10-24 15:41:34 +03:00
Alexander Medvednikov dca49e43d9 c defs 2019-10-24 15:41:34 +03:00
Larpon 98c016b41d os: walk() function 2019-10-24 15:17:09 +03:00
joe-conigliaro 580abe0de4 lower/snake case consts & enums 2019-10-24 14:48:20 +03:00
joe-conigliaro fe17dd9a7e
vlib: make more structs, consts, & enums public 2019-10-24 22:35:11 +11:00
Alexander Medvednikov 75a6c759c7 enum snake_case check 2019-10-24 14:25:03 +03:00
Alexander Medvednikov 3d6bdc2dc3 public enums + more public structs (libs/examples/tests) 2019-10-24 13:24:50 +03:00
joe-conigliaro 1a2db54bc1
compiler: cgen - fix typo. dependency was spelled wrong 2019-10-24 21:23:11 +11:00
Alexander Medvednikov 4a88a28a3b make all necessary structs public 2019-10-24 12:51:00 +03:00
Alexander Medvednikov dce3275df4 make necessary consts public 2019-10-24 12:36:57 +03:00
Alexander Medvednikov 1c564bc118 compiler: public consts and structs 2019-10-24 12:26:43 +03:00
joe-conigliaro 71d965b6a2 compiler: add hint to use references for dependant struct fields 2019-10-24 11:18:50 +03:00
joe-conigliaro baf49b2523
show struct dependency cycles in error & update module cycle error (#2517) 2019-10-24 15:53:39 +11:00
Alexander Medvednikov f14425ec18 do not allow one letter struct names 2019-10-23 23:46:07 +03:00
Tony Kostanjsek c58c03167d vlib/darwin: remove assert 2019-10-23 23:40:07 +03:00
joe-conigliaro 2f5a742f3e compiler: generic variadic fix 2019-10-23 19:44:05 +03:00
joe-conigliaro 0cf3e2e677 compiler: add variadic support for generic functions 2019-10-23 17:48:06 +03:00
Alexander Medvednikov 054dd237a4 V.js: remove u8 2019-10-23 15:56:57 +03:00
Alexander Medvednikov 1db1e0f4b7 1 2019-10-23 15:55:14 +03:00
Alexander Medvednikov 6174dfb424 fix V.js 2019-10-23 15:51:52 +03:00
Alexander Medvednikov e69117a8f3 vh types + fn receiver name check 2019-10-23 15:42:50 +03:00
Alexander Medvednikov 27e254c738 now bring _windows.v back 2019-10-23 12:54:45 +03:00
Alexander Medvednikov 95321f5b33 fix module_test.v 2019-10-23 12:50:18 +03:00
Alexander Medvednikov 1752f6879c os: remove duplicate consts 2019-10-23 12:45:52 +03:00
Alexander Medvednikov 8021a01365 rename windows files for now 2019-10-23 12:37:42 +03:00
Alexander Medvednikov b298b397dc vh gen: consts before fns 2019-10-23 12:35:51 +03:00
Alexander Medvednikov 92185a1a6f os: move windows consts to a separate file 2019-10-23 12:28:48 +03:00
Alexander Medvednikov 2e28691254 _windows.v fix 2019-10-23 12:25:00 +03:00
Alexander Medvednikov 5ef4b2064f windows: _win.v => windows.v 2019-10-23 12:21:33 +03:00
Alexander Medvednikov a6aad880f7 gg: resizable window option 2019-10-23 12:17:08 +03:00
Alexander Medvednikov 8b74c711c6 vh generation: consts + cleanup 2019-10-23 11:09:54 +03:00
Enrico Lefass fcead2f79e time: squash three occasions of const(...) into one 2019-10-23 08:41:16 +03:00
Alexander Medvednikov 0806aa353c match: second step 2019-10-23 01:06:06 +03:00
Alexander Medvednikov d8edc27805 match: this needs a 2 step PR 2019-10-23 01:00:52 +03:00
Alexander Medvednikov 9743b04fe6 update match statement 2019-10-23 00:56:25 +03:00
Alexander Medvednikov 4574039e4d new vh generation + simpler match statement 2019-10-23 00:45:17 +03:00
Sergio Abreu García 14c273f273 gg: fix clear function 2019-10-22 23:06:56 +03:00
Alexander Medvednikov 7696a600f6 compiler: fix V build on Windows 2019-10-22 21:29:32 +03:00
Delyan Angelov eeea257467 clean up empty lines in errors; simplify source line tracking 2019-10-22 18:38:17 +03:00
Arthur Kennedy Otieno fb89c12d90 V.js: remove a text block resulting in syntax errors 2019-10-22 08:02:31 +03:00
Toby Webb fdfa564865 parser: minor syntax fix 2019-10-21 22:04:57 +03:00
Alexander Medvednikov a29c80ca3d make the unsafe error a warning for now 2019-10-21 18:53:55 +03:00
joe-conigliaro 7680d9a23c
compiler: variadic fn - fix unexpected token `,` error from #2433 (#2468)
* merge master
* fix unexpected token
2019-10-21 23:30:34 +11:00
Delyan Angelov eef73eea22 tools: new tool to extracts function names declared in V files 2019-10-21 14:14:28 +03:00
Delyan Angelov cd8b0d04bb parser: support for 'enum Color {red = 31 yellow green blue}' 2019-10-21 14:00:41 +03:00
Emily Hudson a52cb315cb fix memory bug with generic code generation 2019-10-21 13:54:37 +03:00
Toby Webb dfc654f84e const declarations should be order independent 2019-10-21 08:57:29 +03:00
Emily Hudson 2829298de7 live: Fix MSVC hot code reloading (#2460) 2019-10-21 12:15:43 +11:00
Alexander Medvednikov 333f0ab89f fix v.js test 2019-10-20 20:52:31 +03:00
Alexander Medvednikov 3d6b936f38 parser: undefined error 2019-10-20 20:47:27 +03:00
Enrico Lefass c23155790a os: add pub fn read_bytes and pub fn read_bytes_at 2019-10-20 20:45:16 +03:00
Alexander Medvednikov 81b1b882fd bultin: mark unsafe functions 2019-10-20 20:29:24 +03:00
Alexander Medvednikov c13b58e6db [deprecated] attribute 2019-10-20 20:15:48 +03:00
Alexander Medvednikov 1b518c158b unsafe keyword + make array.free() an unsafe method 2019-10-20 20:10:44 +03:00
joe-conigliaro f7c00b8180 compiler: blank ident - consolidate duplicated code into single function 2019-10-20 12:24:12 +03:00
Simon Heuser 8a31ee4b53 generic functions 2019-10-20 10:19:37 +03:00
Alexander Medvednikov f63e24e51d clean up vtest.v a bit 2019-10-20 09:56:33 +03:00
eau 6d8548d7a5 compiler: add missing header file on OpenBSD 2019-10-20 07:00:01 +03:00
Ole-Martin Bratteng b73387647c v.js: make eprintln use console.error 2019-10-19 15:42:37 +03:00
Delyan Angelov 5977fc0644 compiler: print relative file paths for files in the current directory 2019-10-19 12:03:04 +03:00
joe-conigliaro c24d94f87f
compiler: fix mistake in comptime.v (#2425)
* merge master
* fix mistake in comptime.v
2019-10-19 19:40:01 +11:00
joe-conigliaro b51b8858d6
compiler: update & enable cflag error (#2420)
* merge master
* update & enable cflag error
2019-10-19 11:38:02 +11:00
joe-conigliaro 22c7438795
compiler: cflag error - closes #2406 (#2417)
* merge master
* fix blank ident & add cflag error
* undo cflag changes
* add missing brace
* undo change to comptime
* improve error message
* update
2019-10-19 08:18:08 +11:00
joe-conigliaro 28b24eeef6
compiler: blank ident error fixes + other small cflag / parser fixes (#2418)
* merge master
* fix blank ident & add cflag error
* undo cflag changes
* fix gen_js
* undo gen_js changes
* fix
* fix
2019-10-19 08:00:47 +11:00
Alexander Medvednikov c18578af6f compiler: linux tcc fixes 2019-10-18 20:49:43 +03:00
Danil-Lapirow bb9d95e9aa parser: allow '' in attributes 2019-10-18 20:17:23 +03:00
joe-conigliaro 689003454b
only register initial varg struct on first pass (#2404) 2019-10-18 19:28:14 +11:00
Alexander Medvednikov 368e8e85a8 compiler: info message when trying to use an old command 2019-10-18 09:56:57 +03:00
joe-conigliaro 6dea2359ab strconv: optimize functions
also make it the responsibility if the caller to properly trim whitespace
2019-10-18 08:20:03 +03:00
Alexander Medvednikov c355e967ad move array filter codegen to comptime.v 2019-10-18 07:58:54 +03:00
Alexander Medvednikov d501dc4c11 compiler: first step to validate cmd flags 2019-10-18 07:48:46 +03:00
Alexander Medvednikov 80e79a3966 array: optimized generic filter() 2019-10-18 07:30:39 +03:00
pfefferminz132 eda0c73bef compiler: use eprintln for cache diagnostic messages 2019-10-18 06:16:33 +03:00
joe-conigliaro 8d16762f03 strconv module + use it in builtin/string instead of C functions 2019-10-17 19:37:55 +03:00
Simon Ernst 270934441c os: make ls() return an optional 2019-10-17 14:30:05 +03:00
joe-conigliaro 4932a32d91 compiler: fix os import by default in v scripts 2019-10-17 11:52:46 +03:00
Unknown User f46b58b09d int: i64 hex() use PRIx64 2019-10-17 11:06:54 +03:00
joe-conigliaro b32a462b2e math: new consts + helpers funcs for string to int / float 2019-10-17 09:04:57 +03:00
Alexander Medvednikov 5cd38ec91b V shell scripts 2019-10-17 08:27:27 +03:00
Vinicius Rangel 96152510e5 parser: interpolation calling twice fix
if string interpolation needs to call a function, it will cache the
return to .len & .str usage in the generated code
2019-10-17 07:02:02 +03:00
Vinicius Rangel 5481f226dd parser: Infinite multi-dimensional array 2019-10-17 06:52:58 +03:00
Alexander Medvednikov 5faa7e7861 Revert "repl: add readline for user input "
This reverts commit 83732642ac.
2019-10-17 03:37:30 +03:00
Henrixounez 83732642ac repl: add readline for user input 2019-10-16 18:38:07 +03:00
Henrixounez 99e07718da readline: fix reading on linux, crash on mac 2019-10-16 12:46:24 +03:00
joe-conigliaro 280ccfa177 math: fns for gettng bit repr of float & vice versa 2019-10-16 11:19:03 +03:00
Alexander Medvednikov 66f36be7d0 Revert "repl: readline line editing "
This reverts commit 1956c6f906.
2019-10-16 03:31:48 +03:00
Alexander Medvednikov 00fd1abf82 readline: fix macos 2019-10-16 03:20:40 +03:00
Alexander Medvednikov 526f1a3172 Revert "Revert "parser: fix programs without fn main""
This reverts commit 61af044316.
2019-10-16 03:20:16 +03:00
vitalyster 9b38f59184 msvc: detect x86 host and use x86 build tools 2019-10-16 02:54:35 +03:00
Henrixounez 1956c6f906 repl: readline line editing 2019-10-16 02:50:48 +03:00
vitalyster 0e0f0ae5ea escape os.exec('"$vexec"') to support directories with spaces 2019-10-16 02:49:51 +03:00
Simon Heuser a5d61f6da0 math.complex: make fields public 2019-10-15 12:43:28 +03:00
Alexander Medvednikov 49d6c26da4 parser: do not allow str[i++]; update contributing.md 2019-10-15 11:06:22 +03:00
Henrixounez bb1eca3564 readline: basic mac and windows version using os.getline 2019-10-15 09:04:22 +03:00
Alexander Medvednikov 75e2a29cb5 string: bring back strtoul for now 2019-10-15 08:53:35 +03:00
Alexander Medvednikov f9593bd857 builtin: float.v + remove #include <math.h> 2019-10-15 08:41:45 +03:00
Alexander Medvednikov 4b176ba855 string: test i64() and u64() 2019-10-15 04:26:19 +03:00
Alexander Medvednikov 10ed65bc12 fix float.eq() 2019-10-15 03:45:11 +03:00
Alexander Medvednikov 91690a1b54 fix f64 tcc eq crash 2019-10-13 04:27:57 +03:00
joe-conigliaro ae3ec380f8
add notice about msvc compilation (#2340) 2019-10-14 18:36:29 +11:00
Nicolas Sauzede eb031b6800 compiler: enhance non-pub struct fields error message 2019-10-14 10:15:21 +03:00
Alexander Medvednikov 2d127cb694 tcc windows fixes 2019-10-14 09:03:11 +03:00
Alexander Medvednikov a68222b55b comptime: fix tcc check 2019-10-14 08:53:03 +03:00
joe-conigliaro 9a2b8a0814
compiler: move msvc compiler to -cc flag instead of -os (#2338)
* move msvc to -cc flag instead of -os

* undo unrelated change

* do first build without msvc

* remvove flags temp

* fix comment
2019-10-14 16:41:46 +11:00
Alexander Medvednikov 093d8a2b00 compiler: remove math dependency 2019-10-14 08:34:48 +03:00
joe-conigliaro 7dc740d084
CI: fis vjs build failure (#2337)
* fix ci building v

* fix v.js

* more js fix

* test

* fix

* remove testing
2019-10-14 15:42:27 +11:00
joe-conigliaro de10a529b0 CI: fix building v 2019-10-14 07:08:02 +03:00
Alexander Medvednikov e2bca190a9 compiler: v.v fixes 2019-10-14 05:18:48 +03:00
joe-conigliaro e5b0478e19
compiler: optimize, don't rescan module directory for files (#2334)
* optimize, don't rescan module directory for files
* move from table to v
2019-10-14 12:07:59 +11:00
Alexander Medvednikov 6a951751f7 compiler: fix building_v 2019-10-14 03:56:53 +03:00
Alexander Medvednikov b237ffcf09 Revert "move compiler/main.v to v.v"
This reverts commit 3748de8736.
2019-10-14 03:48:36 +03:00
Alexander Medvednikov 3748de8736 move compiler/main.v to v.v 2019-10-14 03:38:06 +03:00
Alexander Medvednikov 61af044316 Revert "parser: fix programs without fn main"
This reverts commit bf21108fdb.
2019-10-13 17:55:12 +03:00
Alexander Medvednikov b1806b57d8 tests: no main fn 2019-10-13 17:50:55 +03:00
joe-conigliaro a90427a663 parser: fix variadic function unused var C error 2019-10-13 16:58:54 +03:00
Delyan Angelov 53c64abdeb compiler: make compiler an ordinary vlib/compiler module
* Move compiler/ under vlib/compiler/ .

* Add a minimal compiler/main.v driver program.

* Cleanup compiler/main.v .

* Make most compiler tests pass again.

* Apply the fix by @joe-conigliaro , so that the rest of the compiler tests are fixed too.

* Thanks to @avitkauskas, now the vlib/vcompiler/tests/str_gen_test.v test does not need to be special cased anymore.

* Reapply @joe-conigliaro fix for vgen.
2019-10-13 16:37:43 +03:00
Alexander Medvednikov ae2af4c36d parser: a small immutable field fix 2019-10-13 01:50:19 +03:00
Nicolas Sauzede 1292163637 runtime: add windows support for nr_cpus() 2019-10-13 01:01:15 +03:00
Alexander Medvednikov 432e074b4e fix complex_test.v 2019-10-12 22:39:18 +03:00
Alexander Medvednikov a76165828b snake_case consts 2019-10-12 22:36:14 +03:00
Alexander Medvednikov 81f8b26127 os.path_separator 2019-10-12 22:18:19 +03:00
Vitalie Ciubotaru ae6a426689 bitfield: remove workaround in assignment operations 2019-10-12 22:03:18 +03:00
joe-conigliaro a06e2298f0 compiler: detect and error on public init function & remove empty init functions 2019-10-12 13:54:58 +03:00
Don Alfons Nisnoni 5ef2c947f7 szip: use `&zip` instead of `*zip` (#2301) 2019-10-12 12:46:33 +03:00
joe-conigliaro 40156392f8
compiler: cached modules - windows fixes & organise cached module path (#2302)
compiler: cached modules - windows fixes & organise cached module path (#2302)
2019-10-12 16:41:41 +11:00
joe-conigliaro dd053d79b0 vlib/examples: fix gl/glfw/gg examples. rename init functions 2019-10-12 06:03:15 +03:00
Alexander Medvednikov b107b4f1e5 modules: create the modules directory if it's missing, use cache/ 2019-10-12 05:04:59 +03:00
Alexander Medvednikov 4c91a5c94b module caching: generate type aliases 2019-10-12 04:09:37 +03:00
Alexander Medvednikov 4cd9099f74 disable $if for headers for now 2019-10-12 03:49:36 +03:00
Alexander Medvednikov 6db7518189 make $if work with includes: skip the body if the target is different 2019-10-12 03:48:32 +03:00
joe-conigliaro 51388fea75 compiler: module init function & init consts for cached modules 2019-10-12 01:17:37 +03:00
Don Alfons Nisnoni c7e47e6884 array: minor clean up 2019-10-12 00:06:30 +03:00
Delyan Angelov 2b087dbf95 backtraces: add source line numbers too on linux
* Add source line numbers to backtraces on linux.

* Fix -g (broken after token caching).

* reset the #line directives after all the v code is compiled

* cleanup p.cgen.line setting inside p.next() .

* Support windows filepaths like "C:\Users\travis\build\vlang\v\v.exe.tmp.c" inside generated #line directives.

* Try to diagnose better windows-gcc failing.

* Revert "Try to diagnose better windows-gcc failing."

* implement and use cescaped_path/1 .

* Use cescaped_path/1 consistently throughout compiler/ .
2019-10-12 00:04:42 +03:00
Alexander Medvednikov 9193242a76 fix runtime module test 2019-10-11 14:16:02 +03:00
Alexander Medvednikov af46bf515f glfw: bring back 64 bit glfw3.dll 2019-10-11 13:47:56 +03:00
Alexander Medvednikov 52c2fa44b8 runtime: nr_cpus() 2019-10-11 13:47:56 +03:00
Alexander Medvednikov a280e98d7f fix the build 2019-10-11 06:57:08 +03:00
Alexander Medvednikov 726aaecc46 compiler: make V compilable wit the tcc backend 2019-10-11 06:49:53 +03:00
Don Alfons Nisnoni 942c56ca95 array: add reduce() method 2019-10-11 04:12:40 +03:00
Alexander Medvednikov e1dd4c19b5 compiler: cache modules if they are not built yet 2019-10-10 22:53:59 +03:00
vitalyster a5ccc4673b http: handle and print socket errors 2019-10-10 20:24:36 +03:00
vitalyster f86a52aae6 socket: reuse socket parameters in addrinfo hints 2019-10-10 20:09:43 +03:00
Delyan Angelov e61dce6441 freetype: fix compiler warning about ctx._draw_text 2019-10-10 20:09:19 +03:00
vitalyster e64609387d term: colors on Windows console
* isConsole moved to builtin is_atty function
* Windows console initialization moved to builtin.init
2019-10-10 20:08:36 +03:00
joe-conigliaro f8fefd5a60 urllib: rem underscore methods from; add strings index_bytes 2019-10-10 20:04:11 +03:00
Delyan Angelov f3abb9e682 fix 'v -debug examples/hello_world.v' 2019-10-10 20:02:32 +03:00
Alexander Medvednikov 9385ed27ae fix v.js 2019-10-10 01:27:16 +03:00
Alexander Medvednikov 1f6535afb0 array/map: remove _get(), _push() etc 2019-10-10 01:15:19 +03:00
Alexander Medvednikov 2411b8d1e7 module cache fixes; do not allow function names starting with _ 2019-10-10 00:44:26 +03:00
vitalyster 0796e1dd69 socket: no need to initialize WinSock on each request 2019-10-09 21:01:31 +03:00
Alexander Medvednikov b1da59845e array: fix initialization of empty fixed size arrays 2019-10-09 15:26:30 +03:00
Alexander Medvednikov 29f578d172 cc: bring back os.rm() 2019-10-09 07:02:45 +03:00
Alexander Medvednikov 7690b58691 remove experimental os2 test 2019-10-09 06:41:55 +03:00
Alexander Medvednikov a9a73d9315 caching modules: almost there 2019-10-09 06:35:58 +03:00
Unknown User c1eb714a7f bitfield: change `[0;n]` to `[0].repeat(n)` 2019-10-08 13:24:02 +03:00
Unknown User 6edc25f512 pg: remove unused imports 2019-10-08 13:23:39 +03:00
Don Alfons Nisnoni fecf3f19c3 array: add filter() method 2019-10-08 13:23:17 +03:00
vitalyster e10848e0d5 windows: read console with ReadConsole when it is not redirected 2019-10-08 12:29:09 +03:00
Delyan Angelov 60d4f47f7a improve crash diagnosis/detection when a test segfaults 2019-10-08 02:34:55 +03:00
Delyan Angelov ac5241b5bd compiler: implement -stats option for running a _test.v file
* Draft implementation of `v -stats file_test.v` .

* compiler: call stuff in vlib/benchmark/tests/always_imported.v, when doing `v -stats file_test.v`

* Nicer looking output from 'v -stats file_test.v' .

* Tweak colors and layout of -stats file_test.v .

* Fix a hardcoded path in compiler/main.v .

* Show colorized OK/FAIL for the examples in 'v test v' too.

* Add some comments about the purpose of the methods inside vlib/benchmark/tests/always_imported.v .

* when fails are 0, do not colorize their number at all.
2019-10-07 08:51:26 +03:00
Alexander Medvednikov f1923d454c parser: make verbose mode less verbose 2019-10-07 01:25:53 +03:00
Henrixounez 5acadbab32 readline: optional return, automatic raw mode and standalone functions 2019-10-06 16:28:41 +03:00
Enrico Lefass b0573bd4e4 time: add new public format function ddmmy() 2019-10-06 16:24:37 +03:00
Alexander Medvednikov b242e8d7ff optimize `a in [1,2,3]` to `a == 1 || a == 2 || a == 3` 2019-10-06 06:07:38 +03:00
Alexander Medvednikov 65aafb3cf1 3d arrays are not supported yet 2019-10-06 04:18:55 +03:00
Alexander Medvednikov 6a0599b5f4 raw strings with r'raw' 2019-10-06 04:11:08 +03:00
Alexander Medvednikov 735336e569 array: 2d and 3d test 2019-10-05 16:03:19 +03:00
joe-conigliaro 72ae12877e
remvoe dupe in main & fix js string.builder (#2233) 2019-10-05 18:07:10 +10:00
Alexander Medvednikov e14861694c another v.js fix 2019-10-05 08:03:26 +03:00
Alexander Medvednikov ed99fc2d42 v.js: fix strings.Builder 2019-10-05 07:40:32 +03:00
Don Alfons Nisnoni 68bcf6830c array: add index() method 2019-10-04 23:07:19 +03:00
Alexander Medvednikov 52f4f4026b
compiler: cache modules 2019-10-04 15:48:09 +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
unknown-v b3805140ec Remove json_test.exp & json_test.lib 2019-10-03 02:00:11 +03:00
Swastik Baranwal 7d763e0776 fix js build 2019-10-02 15:46:08 +03:00
Alexander Medvednikov 5ba354fa2c `if a := foo() {` syntax for handling optionals 2019-10-01 22:57:38 +03:00
hazohelet 56e4ed1e6b compiler: float comparison uses machine epsilon by default 2019-10-01 22:38:36 +03:00
joe-conigliaro 7fd2ef975b parser: add v error if assigning var to blank identifier `_`
also fix C warn & double semicolon
2019-10-01 15:40:11 +03:00
Delyan Angelov 2ac80485c0 C backend: fix a couple of C warnings on Linux 2019-10-01 14:35:59 +03:00
Alexander Medvednikov 243626c7c1 readline: capitalize structs 2019-10-01 06:28:06 +03:00
Alexander Medvednikov 841d824216 builtin: a very early version of the hashmap 2019-10-01 06:20:50 +03:00
Alexander Medvednikov 2aa6ab71db darwin: no need to free the buffer 2019-09-30 23:29:53 +03:00
Tony Kostanjsek 39cfb1d6a6 darwin: resource_path() 2019-09-30 23:29:14 +03:00
Delyan Angelov e72fe25224 compiler: more precise 'declared and not used' error positioning
* compiler: extract and cleanup error handling functionality into its own file compiler/compile_errors.v

* compiler: implement p.error_with_token_index and p.warn_with_token_index and use them. Fix tests.

* tools/performance_compare: add a 'Source lines in compiler/' line

* MSVC does not have STDOUT_FILENO nor STDERR_FILENO ...
2019-09-29 20:37:39 +03:00
hazohelet 6d483c0a56 parser: float1 == float2 uses machine epsilon by default 2019-09-29 18:27:53 +03:00
joe-conigliaro 918edad525 crypto: make sum methods safe 2019-09-29 16:44:52 +03:00
Alexander Medvednikov ee8ff39454 rename ModPath to v_modules_path; do not allow long variable names without _ 2019-09-29 05:34:17 +03:00
Delyan Angelov 8b8cd13929 parser: add some infrastructure for more specific errors
* compiler: change s.line_nr in just one place, so that s.last_nl_pos will be updated in tandem too.

* Cleanup spurious spaces.

* Store ScannerPos info inside the cached tokens.

Use the stored information when errors are encountered.

* Fix #2079 ( cannot use type...in assignment ).

* do not store scannerpos per each token, instead rescan the source once on error to get the position.

* compiler: implement highlighting for errors. Use only line/col info stored in the cached tokens.

* fixing building on windows

* Split can_show_color to _nix and _win files.
2019-09-29 04:33:23 +03:00
Alexander Medvednikov d68e31a863 fix os_win.v 2019-09-29 04:16:15 +03:00
Alexander Medvednikov a52662fca0 do not allow duplicate methods; fix os_win.v; minor fixes and docs 2019-09-29 04:13:32 +03:00
Alexander Medvednikov ed93185cb7 fix base64 test 2019-09-28 22:23:22 +03:00
sunnylcw 4b03abdaff compiler: enable FreeBSD's cflags for freetype & glfw 2019-09-28 14:18:04 +03:00
Delyan Angelov 366c50674c tooling: add tools/compare_v_performance_between_commits
easily compare v performance/size across commits.

* fix eprintln on linux (it now uses stderr, and flushes it).

* flag: cleaner usage information.
2019-09-28 14:17:16 +03:00
hazohelet fd2d9c214c f64: fix .eq() 2019-09-28 14:04:03 +03:00
joe-conigliaro fbd414fd2f crypto.md5: fix u64 modulus operation 2019-09-28 14:02:57 +03:00
Delyan Angelov 6bba4b1be0 string: document the tradeoffs for V strings 2019-09-28 13:54:30 +03:00
Alexander Medvednikov 60eb73adb4 array: single element array test 2019-09-28 13:52:38 +03:00
lutherwenxu a4d2633a33 string: Properly null-terminate repeated string 2019-09-28 13:31:12 +03:00
Alexander Medvednikov a5391c8882 string.repeat: re-write without a libc function call 2019-09-28 02:51:42 +03:00
Alvydas Vitkauskas 931b71c428 string: improve repeat() 2019-09-27 15:49:09 +03:00
vitalyster a1e45e3247 darwin: use system ssl headers 2019-09-27 01:35:25 +03:00
Alexander Medvednikov 74bbf592d1 solaris: another fix 2019-09-27 00:30:41 +03:00
Alexander Medvednikov fcf8f7fc93 solaris: small fix 2019-09-27 00:24:15 +03:00
Alexander Medvednikov 107e9107c8 solaris support 2019-09-27 00:23:27 +03:00
Don Alfons Nisnoni fb4f14ba76 string: add repeat() method 2019-09-26 22:54:53 +03:00
vitalyster 9834ccfcd9 windows: Unicode and IPv6 http/sockets
cleanup schannel implementation (drop NT4.0 compatibility, use unicode strings, etc)
restore http tests
fix socket test: it did not throw before
2019-09-26 22:54:15 +03:00
joe-conigliaro 47da52b85b crypto.[sha256/sha512]: remove extraneous casts & use rotations from math.bits 2019-09-26 16:38:12 +03:00
joe-conigliaro c069525e8c crypto.[md5/rc4/sha1]: remove extraneous casts 2019-09-26 14:57:31 +03:00
joe-conigliaro f1f720cc78 pg: update optional return syntax 2019-09-26 14:23:29 +03:00
joe-conigliaro 896f978b94 crypto.aes: remove extraneous casts 2019-09-26 14:22:47 +03:00
joe-conigliaro a5ea7e4304 math.bits: remove extraneous casts 2019-09-26 14:14:04 +03:00
Alexander Medvednikov 04e4018228 compiler: small fixes + some logic for freeing strings 2019-09-26 03:24:58 +03:00
Don Alfons Nisnoni b1f0df0fd1 mysql: make compile 2019-09-26 03:18:26 +03:00
Delyan Angelov 33df5edc08 http: remove const started, use _ instead 2019-09-25 23:58:32 +03:00
Delyan Angelov ab291902d8 compiler: remove special case for http__init_module call
tmp fix until `fn init()` is supported
2019-09-25 23:28:51 +03:00
Alexander Medvednikov 4c898ab6b3 strings: simplify repeat() 2019-09-25 22:08:51 +03:00
joe-conigliaro d4bae356ba compiler/vlib: add error for no new vars in loop ("_,_") & remove "." from errors 2019-09-25 17:59:50 +03:00
joe-conigliaro 8974aa4513 compiler/vlib: change `_ :=` to `_ =` and disable `_ :=` 2019-09-25 15:10:45 +03:00
Alexander Medvednikov ab52b453cb
map: make .keys() pure 2019-09-25 05:56:10 +03:00
Alexander Medvednikov f7d8fb0cf4 string: bring back old index() without an allocation 2019-09-23 23:34:42 +03:00
Alexander Medvednikov d2d75f3824 parser: do not allow "int?", only "?int" 2019-09-23 23:17:06 +03:00
Alexander Medvednikov 8d52d877fb compiler: free local_vars 2019-09-23 22:16:52 +03:00
Delyan Angelov 0e39df24d4 net: make socket.recv return the allocated buffer and the message length 2019-09-23 19:48:18 +03:00
Alexander Medvednikov bf1ee28194 ui: Objective-C @interface support for Cocoa; minor clean-ups 2019-09-23 15:54:17 +03:00
Henrixounez db44004d51 readline: utf8 compatibility 2019-09-23 13:43:24 +03:00
joe-conigliaro 23c84516e2 compiler: error on unused imports 2019-09-23 13:42:20 +03:00
Alexander Medvednikov b4207e1be7 compiler: allow "u64_var == 0" without casting the const literal 2019-09-23 02:14:10 +03:00
joe-conigliaro 7aaf4012e4 math.bits: add missing pub to fn's 2019-09-23 00:51:03 +03:00
Delyan Angelov 1b91b31698 rand: add pcg32 and splitmix64 implementations 2019-09-23 00:50:22 +03:00
Delyan Angelov 7421781150 CI: split jobs into more steps; compiler: fix "v test v" with tcc 2019-09-22 17:24:15 +03:00
luoheng f1d5f8e2bf parser: allow `!` only with bools 2019-09-21 18:21:45 +03:00
Alexander Medvednikov a232b215a7 double quotes for denoting strings 2019-09-21 17:18:02 +03:00
Michiel Vlootman 9b7ca248f0 similarity.v: update a comment 2019-09-21 14:59:06 +03:00
vitalyster 111007470e array: malloc => calloc 2019-09-21 02:29:09 +03:00
Henrixounez ffcff9ebd4 builtins: ustring comparisons, concatenation and other functions 2019-09-20 19:07:38 +03:00
joe-conigliaro d80a3365c4 math.bits: add some more helpers, to be used in upcoming biginteger 2019-09-20 17:39:36 +03:00
vitalyster a42b4e219c net.socket: windows fixes and test
* added missing ai_canonname in addrinfo structure
* ai_canonname, ai_addr and ai_addrlen must be zeroed before getaddrinfo call
* write() must not be used on windows sockets
* added (Socket).get_port() function which is useful when socket was initialized with 0 (random) port
* tests is fixed, test server started listening on random port to avoid conflicts
2019-09-20 17:04:39 +03:00
vitalyster f1bb25bfaf windows: Unicode input in REPL 2019-09-20 17:03:13 +03:00
joe-conigliaro 486b3d2f92 crypto.rand: fix rand test from failing sometimes 2019-09-19 13:12:40 +03:00
Alexander Medvednikov a94c1556ce array: remove temporary repeat2() 2019-09-19 05:22:24 +03:00
Alexander Medvednikov cb31eeec55 compiler: first step to require explicit definition of imported C fns 2019-09-19 05:16:25 +03:00
joe-conigliaro b9cc6535f6 crypto.rand: rename read_u64 to int_u64 + clean up 2019-09-18 16:12:16 +03:00
joe-conigliaro f187c35fb2 vlib: inline certain functions 2019-09-18 15:45:32 +03:00
Alexander Medvednikov d1500511e6 "none" keyword for optionals + more memory fixes 2019-09-18 14:15:10 +03:00
joe-conigliaro 32ad33558d crypto.rand: add PRNG function read_u64 2019-09-17 22:03:54 +03:00
Alexander Medvednikov 0a2f7a6ba7 fix tests 2019-09-17 13:37:25 +03:00
Alexander Medvednikov 1397d532c6 compiler: check if mutable receivers are modified 2019-09-17 13:10:43 +03:00
joe-conigliaro 9c9e6290a6 remove unnecessary mut argument (#2016) 2019-09-17 01:09:19 +03:00
Alexander Medvednikov 19b04d5427 math: fix const warnings 2019-09-16 22:49:18 +03:00
Nicolas Sauzede ff009f1c4e rand: rand_r(seed) 2019-09-16 22:21:21 +03:00
vitalyster f7a0fefe27 glfw: printf -> println 2019-09-16 21:07:34 +03:00
Alexander Medvednikov c76d09f9a5 make V.js compile 2019-09-16 18:31:13 +03:00
Delyan Angelov 7cf7215557 testing: always show benchmarks 2019-09-16 18:27:55 +03:00
hazohelet 9158ba4640 vlib: add Android checks to build V on Android 2019-09-16 18:23:11 +03:00
Delyan Angelov a45895a3af new benchmark module + make the tests use it 2019-09-16 17:29:06 +03:00
joe-conigliaro 075a8e5ccb compiler: improve typo detection 2019-09-15 20:07:12 +03:00
Alexander Medvednikov 3db4d66824 operator | not defined on bool 2019-09-15 19:35:48 +03:00
Alexander Medvednikov 48c05b5a45 cgen: use *char in all functions with *char args to avoid warnings 2019-09-15 18:56:33 +03:00
Alexander Medvednikov 849bef987c more C warnings fixed 2019-09-15 15:53:57 +03:00
Alexander Medvednikov 3e923871cf compiler: use *char() cast in C functions to afix warnings 2019-09-15 15:19:18 +03:00
joe-conigliaro f077fbd32d vlib: change `[0;n]` to `[0].repeat(n)` 2019-09-15 12:26:05 +03:00
Henrixounez 602e472b8a builtin: getchar for unicode characters 2019-09-15 04:41:24 +03:00
Henrixounez 04ff9ede9f readline: allow writing without tty + small fixes 2019-09-15 04:33:31 +03:00
Alexander Medvednikov 5cc81b91cb JavaSript backend (early stage) 2019-09-15 03:49:57 +03:00
Vitor Oliveira 1a099c9284 vlib: fix several typos 2019-09-14 23:54:14 +03:00
joe-conigliaro 81bf67ba4f hash.crc32: change *Crc32 to &Crc32 2019-09-13 22:45:04 +03:00
joe-conigliaro 5aaa794519 compiler: clean up the typo check 2019-09-13 16:15:30 +03:00
Alexander Medvednikov 9dd86f6fb8 compiler: more memory logic + replace "cur_fn &Fn" with "cur_fn Fn" 2019-09-13 15:47:31 +03:00
joe-conigliaro 41734affb3 compiler: detect typos in function/variable/module names 2019-09-13 14:10:24 +03:00
iRedMail 92b634de7c Fixes old syntax and make Row.vals mutable
- Replace `*` by `&` for C code
- Make `Row.vals` mutable. Otherwise line 56 will raise error.
2019-09-13 00:46:51 +03:00
Henrixounez af60f9ead4 compiler: escapes quote on literals 2019-09-11 15:48:08 +03:00
Alexander Medvednikov 9853323157 array: make ".contains()" private, use "in" everywhere 2019-09-11 15:12:13 +03:00
Delyan Angelov a53c69de38 os: use path separator more consistently 2019-09-11 01:08:23 +03:00
Alexander Medvednikov 7fc678c961 fix urllib_test.v 2019-09-09 14:21:18 +03:00
Alexander Medvednikov 00687de43b memory: clean up all arrays in the V compiler 2019-09-09 13:55:47 +03:00
Alexander Medvednikov 735c78fc6d fix bitfield.v 2019-09-09 02:38:15 +03:00
Alexander Medvednikov a6ec6e23bc bf: minor clean up 2019-09-09 02:31:43 +03:00
Alexander Medvednikov 31c9a2a744 fix bitfield_test.v 2019-09-08 17:55:27 +03:00
Alexander Medvednikov ae866260c8 bf: rename to bitfield 2019-09-08 17:45:51 +03:00
Alexander Medvednikov 6dcdb224a1 bf: fix resize() 2019-09-08 16:10:59 +03:00
Alexander Medvednikov dcc42c858b glfw: GPU driver info 2019-09-08 15:54:16 +03:00
Alexander Medvednikov 76a89c832e parser: small optimizations 2019-08-26 01:19:39 +03:00
Flavien CADET c1f76aec3a vweb: fix a typo 2019-09-06 20:30:20 +03:00
joe-conigliaro 79d4d56fe5 string: implement is_space in V & make trim_space use trim 2019-09-06 13:22:37 +03:00
Carlos Esquerdo Bernat 8a77d4482c vweb: fix headers 2019-09-05 15:46:24 +03:00
Henrixounez f83bc9528d readline: added suspend handling and dont print special characters 2019-09-05 15:06:41 +03:00
Henrixounez cc5470d068 readline: overwrite mode and eof fix 2019-09-05 02:02:04 +03:00
vitalyster 38d26c8080 Travis: run msvc tests 2019-09-03 20:15:08 +03:00
joe-conigliaro b4d033ff54 compiler: generalize mod dag & use for sorting structs also 2019-09-03 19:11:21 +03:00
Delyan Angelov db110759ab vweb: fix warnings 2019-09-03 19:10:56 +03:00
joe-conigliaro 5dcfda0600 crypto.rand: improve test to actually check for difference in data 2019-09-03 16:10:26 +03:00
Delyan Angelov c9a39dfdb5 compiler: build tetris executable on windows with both msvc and mingw gcc 2019-09-03 16:09:43 +03:00
Henrixounez 216f343f09 readline: history feature 2019-09-03 16:07:20 +03:00
Joe Conigliaro 1f67d9edd8 fix bugs breaking tests 2019-09-03 15:21:52 +03:00
Delyan Angelov ecb661f719 tetris: fix &Foo instead of *Foo warnings. 2019-09-03 11:39:06 +03:00
Vitaly Takmazov 83d724fb70 print_backtrace: do not use printf directly 2019-09-03 11:09:55 +03:00
Henrixounez 510fb2a981 readline: add custom prompt feature 2019-09-02 20:22:33 +03:00
Delyan Angelov 93716ee944 crypto: add utility hexhash functions 2019-09-02 20:22:19 +03:00
Alexander Medvednikov bb9eec8696 json: use & 2019-09-02 19:17:05 +03:00
Henrixounez 9b8de9b59c readline: clear the screen on ctrl+l 2019-09-02 15:33:46 +03:00
Alexander Medvednikov 1c6d51f271 remove u8 and i32 from tests and examples 2019-09-02 15:02:25 +03:00
Alexander Medvednikov 718041194f os: clean up 2019-09-02 13:57:00 +03:00
Henrixounez 33ae7520e7 readline: added suppr key to delete characters right of cursor 2019-09-02 13:36:04 +03:00
Alexander Medvednikov 0e2c41e0f9 replace *Foo with &Foo everywhere 2019-09-01 22:51:16 +03:00
Alexander Medvednikov 3bd7bcfac3 remove u8 and i32 aliases 2019-09-01 22:37:22 +03:00
Alexander Medvednikov 4edccce9a3 array: sort ints 2019-09-01 22:30:49 +03:00
Henrixounez fe3639d547 readline: multiline wrapping for editing and cursor 2019-09-01 20:43:47 +03:00
Alexander Medvednikov bfa6505636 compiler: replace &Type with Type 2019-09-01 14:05:03 +03:00
Alexander Medvednikov 961e778ed1 map_test.v: format + ref test 2019-09-01 14:05:03 +03:00
Alexander Medvednikov af5b2e1b3c glfw: make Pos fields public 2019-09-01 07:09:18 +03:00
Henrixounez 4abfb686ec readline: moving cursor feature 2019-09-01 01:02:33 +03:00
Henrixounez 95b107cbc6 readline: reworked dispatch architecture for easier features add 2019-08-31 21:18:32 +03:00
Alexander Medvednikov 72363ada84 array: make .set() private + format 2019-08-31 02:35:05 +03:00
Henrixounez a9a4032a11 readline: basic reading on linux 2019-08-31 00:54:53 +03:00
kawa-yoiko 4f0f99e663 parser: fix mutability with chained fields 2019-08-30 20:19:06 +03:00
Delyan Angelov e3389e8ec1 log: add seconds to terminal output too. 2019-08-30 13:06:02 +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
Alexander Medvednikov 2fe20cd092 compiler: fix struct order bug 2019-08-29 23:46:12 +03:00
Henrixounez 29e0396eca compiler: adds handling of two variables for loop on string 2019-08-29 21:41:16 +03:00
joe-conigliaro cd625b04eb http: windows - make https requests work in threads 2019-08-29 12:33:20 +03:00
joe-conigliaro 32683ad6fd sync: fix mutex on win & waitgroup (all os) update. fixes news_fetcher example on win (#1776) 2019-08-29 11:48:03 +03:00
Delyan Angelov c92654a044 fix building v on alpine with musl libc 2019-08-28 19:26:18 +03:00
Vitaly Takmazov 5124eae47d msvc: check exit code 2019-08-28 13:26:27 +03:00
Delyan Angelov 73c6bae480 print backtraces on panic on mac and linux 2019-08-27 23:29:13 +03:00
joe-conigliaro 02fc7e14cd make trim use cutset like trim_right/trim_left 2019-08-27 22:53:32 +03:00
joe-conigliaro 3db50f724b net.urllib: Update with latest changes from go lib 2019-08-27 22:44:41 +03:00
Alexander Medvednikov ab0a78a498 fix sync_win.v 2019-08-27 00:46:27 +03:00
Alexander Medvednikov d4b6b6c833 freetype: render all Unicode characters 2019-08-27 00:20:54 +03:00
Robin Martijn 5df31c16f7 json: fix #1751; support unsigned integers 2019-08-26 20:02:19 +03:00
joe-conigliaro 857cf00caf builtin.string: make trim_left/right() behave correctly 2019-08-26 14:18:58 +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
Swastik Baranwal db525524ee string: title() and small fixes 2019-08-26 13:32:53 +03:00
Robin Martijn 754b8082fb time/vlib: fix day_of_week() with sakamoto's algorithm 2019-08-25 23:35:01 +03:00
joe-conigliaro 836cc32d78 http: allocate memory dynamically on Windows 2019-08-25 21:27:12 +03:00
Henrixounez f22d5c5624 vlib: remove negative checks on unsigned (#1728) 2019-08-25 01:48:38 +03:00
Delyan Angelov a62e6b127a http: send headers and request data 2019-08-25 01:48:06 +03:00
Alexander Medvednikov cd10890258 minor tcc fixes 2019-07-08 03:44:47 +02:00
Alexander Medvednikov 4c07df6a21 small webassembly fix 2019-08-24 03:09:23 +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
Michiel Vlootman 817f5bf0a6 add test for [json:fieldname]
Added test also tests the output from json.encode to make sure the json:fieldname attribute is used.
2019-08-23 11:43:11 +03:00
Alexander Medvednikov e39cb41d6b json: custom json field names with "[json:field_name]" 2019-08-23 02:54:39 +03:00
Alexander Medvednikov f61b14584a remove "import const" everywhere 2019-08-23 00:09:03 +03:00
Alexander Medvednikov dcfc9eb1a1 remove from the language 2019-08-22 23:19:31 +03:00
Alexander Medvednikov 2eb9440095 http: disable the tests for now 2019-08-22 22:48:31 +03:00
Alexander Medvednikov eb5fcafa77 table: TypeCategory; freetype: remove C code; [typedef] C structs;
Objective-C interfaces
2019-08-22 22:18:55 +03:00
SewerynKaminski c8da79d785 Fix terminal goto control sequence building 2019-08-22 20:10:54 +03:00
Henrixounez 780ddaf22b compiler: handles printing of structures and arrays of structures 2019-08-22 14:34:33 +03:00
Danil-Lapirow fe8145c697 json: add raw json test 2019-08-22 14:22:16 +03:00
Delyan Angelov 77b31de117 compiler: produce errors in C "filepath:line:column:" format 2019-08-22 14:15:11 +03:00
Henrixounez 9b3b22d6b3 compiler: allows compound assignment operators on array 2019-08-22 04:57:43 +03:00
Delyan Angelov ffb6c6f5b4 net: add udp socket support and a simple udp server example. 2019-08-22 04:01:04 +03:00
Delyan Angelov 51818346df http: support plain http protocol 2019-08-21 20:04:06 +03:00
Delyan Angelov 49899c649c orm: fix select .. limit 1 . This case now returns an ?Row. 2019-08-20 16:33:14 +03:00
Carlos Esquerdo Bernat cf23c289ec tests: cleanup 2019-08-20 11:18:12 +03:00
Istvan dee411149e pg: config struct for connecting 2019-08-20 11:08:06 +03:00
Alexander Medvednikov 33e730b3fa ui: users_gui example 2019-08-20 00:19:55 +03:00
Alexander Medvednikov 01586d6d67 ui: ui_lin.v and ui_win.v 2019-08-19 00:28:33 +03:00
Alexander Medvednikov ac6c6e36c3
V UI readme: better wording 2019-08-19 00:14:39 +03:00
Alexander Medvednikov 7465ff97b3
V UI info 2019-08-19 00:12:35 +03:00
Alexander Medvednikov f654c4af7a
ui README.md 2019-08-18 18:28:29 +03:00
Alexander Medvednikov ac8a6d180c
ui license 2019-08-18 18:20:17 +03:00
Alexander Medvednikov 18d0a08ace freetype: fix utf crash 2019-08-18 18:13:12 +03:00
Emily Hudson d373b331fa ompiler: MSVC related fixes and `v test v` for windows testing
* MSVC related fixes and v test v for windows testing

* If second stage crashes on windows goto error

* use os.exec instead of system so that the error can be printed

* use -debug for osx vid

* Fix some whitespace to trigger a rebuild
2019-08-18 17:25:33 +03:00
S-YOU 0066afe7fc mysql module 2019-08-18 17:24:43 +03:00
Alexander Medvednikov 89b5a0fc25 ui: fix focus_app() 2019-08-18 17:01:31 +03:00
Alexander Medvednikov 56fbafe03a cc(): fix -x objective-c; ui.focus_app() 2019-08-18 16:59:36 +03:00
Alexander Medvednikov f9fb6f0be4 orm_test: remove pg import for now 2019-08-18 15:02:36 +03:00
joe-conigliaro 22348f2245 http: add vschannel_cleanup() back 2019-08-18 13:04:17 +03:00
Alexander Medvednikov fe2d2bd2a3 fmt: remove trailing spaces 2019-08-17 22:21:43 +03:00
Alexander Medvednikov 8a1324c141 os: make exec() return ?Result with exit code and output 2019-08-17 21:11:40 +03:00
Alexander Medvednikov 60bf668281 string: fix trim_right 2019-08-17 20:07:40 +03:00
Joe Conigliaro e5ebb83bd9 add test for writer 2019-08-17 17:43:43 +03:00
joe-conigliaro 547241c13c http: make do() return errors instead of panic 2019-08-17 17:02:01 +03:00
Joe Conigliaro 1274cdf0af path must start with / 2019-08-17 16:37:31 +03:00
Alexander Medvednikov 100bb7c54c os: clean up windows functions 2019-08-17 16:17:43 +03:00
Alexander Medvednikov 7ed0438b04 os: remove PathSeparator hack now that we have v_win.c 2019-08-17 16:02:59 +03:00
joe-conigliaro 1ba701e036 encoding.csv: add write support 2019-08-17 15:51:20 +03:00
joe-conigliaro 56566ba3d0 http: follow redirects (openssl & schannel) + fix url params 2019-08-17 15:50:47 +03:00
Nicolas Sauzede 4760fea489 examples/tetris: use better unique colors, implement game over/pause 2019-08-17 02:56:09 +03:00
unknown-v 49205dcce3 examples: fix maps warnings 2019-08-17 02:55:11 +03:00
Alexander Medvednikov be141d9c5f os: Windows fixes 2019-08-17 02:09:36 +03:00
Alexander Medvednikov 94b900bd0a map: allow array values 2019-08-16 23:28:47 +03:00
Alexander Medvednikov b188ecf680 Makefile: re-write `make test` in V 2019-08-16 16:51:46 +03:00
Alexander Medvednikov c156cef972 vweb: fix the test 2019-08-16 09:58:27 +03:00
Alexander Medvednikov dc9cebe26c orm fixes; glfw: remove C code 2019-08-16 09:10:03 +03:00
kambrium a5af903362 Fixed typo 2019-08-16 09:02:09 +03:00
joe-conigliaro 7b48f7ac9e encoding.csv module 2019-08-14 09:45:56 +03:00
Delyan Angelov a0c8fa5bbc http openssl: on linux, prefer newer openssl installations when available 2019-08-13 10:49:07 +03:00
Alexander Medvednikov a11961b0d3 vweb: make mime_types a const 2019-08-13 01:04:26 +03:00
Alexander Medvednikov bc563930f7 string: remove abs() 2019-08-12 21:16:01 +03:00
Alexander Medvednikov ef2ab31e88 sql: only accept strings and ints for now 2019-08-12 21:07:03 +03:00
Alexander Medvednikov 15a42f1f35 array.clone() 2019-08-12 14:41:40 +03:00
joe-conigliaro 8a2714b35a fix typo 2019-08-12 11:03:49 +03:00
Henrixounez 872aa536d8 compiler: unsigned number properly printed and converted to string
fix: array accessing now works with unsigned numbers
2019-08-12 09:15:53 +03:00
Alexander Medvednikov 8c3475b902 generate `.str()` for all arrays 2019-08-11 22:39:45 +03:00
Nick Treleaven ea30ba4555 map: remove temporary fields _keys, key_i 2019-08-11 19:43:21 +02:00
Carlos Esquerdo Bernat d526cfc205 vweb: fix V panic: array index out of range: 1/0 2019-08-11 14:07:22 +02:00
Delyan Angelov 2197c210e7 http: remove superfluous new line in stdout, when making a http request. 2019-08-11 13:15:29 +02:00
Alexander Medvednikov 8f8e0dfad7 V ORM 2019-08-10 13:35:29 +02:00
iRedMail 5a76255297 Allow extra http methods with form: PUT, PATCH
- Allow extra http methods with form: PUT, PATCH
- Rename `post_form` to `form`
2019-08-10 11:44:54 +02:00
Julian Schurhammer 1864e92ff4 parser: disallow statements after a return, branch check $if, $else, switch, and loops correctly 2019-08-10 10:26:42 +02:00
joe-conigliaro a0b59783a2 vlib.http: fix http schannel & follow redirects & cleanup 2019-08-10 10:05:59 +02:00
Alexander Medvednikov 5a80d587d5 makefile: use latest v.c 2019-08-10 08:21:32 +02:00
Alexander Medvednikov d4441e4353 freetype: clean up new_context() 2019-08-10 07:13:25 +02:00
Delyan Angelov 7d8b296943 freetype,gg: option to pass a custom font_path to freetype.new_context . 2019-08-10 00:10:26 +02:00
Vitaly Takmazov 6f03ed0b13 darwin: fix freetype include path for Homebrew and Macports 2019-08-10 00:09:15 +02:00
Nicolas Sauzede efa540e883 examples: tetris: draw score 2019-08-09 13:03:29 +02:00
joe-conigliaro d9a83481a5 http: initial windows schannel http support 2019-08-09 12:52:14 +02:00
Alexander Medvednikov 181a39d752 fix int_test.v 2019-08-09 10:21:21 +02:00
Alexander Medvednikov ae0e3efb8e scanner: experimental ≠ etc support 2019-08-09 09:32:51 +02:00
Alexander Medvednikov fbc480fbed ft: rename to freetype 2019-08-08 16:43:11 +02:00
Alexander Medvednikov 865eee2f6b gg: remove draw_text() 2019-08-08 16:09:04 +02:00
Alexander Medvednikov 27fad0f19b ft: clean up 2019-08-08 10:08:44 +02:00
Julian Schurhammer 61983a6799 parser: check that functions return in all if/else branches 2019-08-08 09:49:56 +02:00
Julian Schurhammer 28147c0930 os.exec: return ?string instead of string 2019-08-08 07:30:05 +02:00
dm1try 1c38661ff7 openssl: add Brew openssl path
closes #1509
2019-08-08 06:26:28 +02:00
Emily Hudson 802ff1d012 compiler: scoped defer + build tests with msvc 2019-08-07 17:51:21 +02:00
Marco Böttcher c924a6cf00 flag: allow to define flags with abbreviation
* flag: allow to check the count of the free args to produce an error

* flag: allow to define flags with abbreviation

flags could be defined to use a single char as abbreviation like
'--output' or '-o'
'--help' or '-h'
2019-08-07 16:52:10 +02:00
Alexander Medvednikov 4b69d43f9f fix examples 2019-08-07 14:16:10 +02:00
Alexander Medvednikov b5d67f226f openssl: use system headers on non-Windows systems 2019-08-07 14:09:15 +02:00
Joe Conigliaro 25d84f72a9 last mut fixes 2019-08-07 14:07:37 +02:00
Alexander Medvednikov cebb6cd537 ft: minor fixes 2019-08-07 13:39:54 +02:00
Alexander Medvednikov ff6e0df0a5 array: minor fixes 2019-08-07 13:39:54 +02:00
joe-conigliaro 511a3d3901 vlib.crypto+other: fix mut args 2019-08-07 13:37:07 +02:00
Alexander Medvednikov 818c4a14e5 compiler: fix a bug with mutable array args 2019-08-07 12:36:45 +02:00
joe-conigliaro 0bcc53c366 vlib: fix mutable args 2019-08-07 09:53:33 +02:00
Alexander Medvednikov 34e0b164eb make function arguments immutable by default 2019-08-07 08:59:00 +02:00
Cody Ley-Han 06b8bd9382 Add a logger interface to the std modules 2019-08-07 08:06:53 +02:00
Alexander Medvednikov 52f473d1c7 all: fix immutable fn args 2019-08-07 05:28:00 +02:00
Vitaly Takmazov 8d35649d90 openssl_backend: add MacPorts libssl path 2019-08-07 04:28:15 +02:00
Delyan Angelov 7607b00952 http: chunked decoding support 2019-08-07 03:57:47 +02:00
Alexander Medvednikov 6bde860043 http test: not today 2019-08-06 17:31:48 +02:00
Alexander Medvednikov ac335269b3 bring back the http test 2019-08-06 17:06:44 +02:00
Alexander Medvednikov b7a6c761b3 openssl: make compile on Linux 2019-08-06 16:35:49 +02:00
joe-conigliaro 60d206c29d http: use urllib.parse 2019-08-06 14:43:09 +02:00
Alexander Medvednikov 1b2e49be1c http: disable the test until windows is fixed 2019-08-06 14:28:27 +02:00
Alexander Medvednikov 3316968266 http: only run the get test on linux/macos for now 2019-08-06 14:15:42 +02:00
Alexander Medvednikov 8b75f2125a http: init_module() to init openssl once 2019-08-06 14:03:01 +02:00
Alexander Medvednikov eece058f18 h1 2019-08-06 14:03:01 +02:00
Alexander Medvednikov bea8f6d7e5 http: remove libcurl dependency; replace it with a simple OpenSSL backend 2019-08-06 13:32:09 +02:00
joe-conigliaro 69932758db net.urllib: update enum / const style 2019-08-06 13:01:05 +02:00
Alexander Medvednikov 7a7b5040e2 http: fix response headers and status code; clean up ft and gg 2019-08-06 03:06:27 +02:00
Marco Böttcher ff730b4eb0 flag: allow to check the count of the free args to produce an error 2019-08-06 01:56:42 +02:00
Vitaly Takmazov 43b81688f6 socket: WSACleanup should not be called on socket close 2019-08-06 01:50:45 +02:00
unknown-v 22eaceb17c http_win: set status_code ,remove unused var 2019-08-05 09:59:07 +02:00
Joe Conigliaro 2fab73983b add builtin import pass + use builder in map 2019-08-05 06:01:53 +02:00
Alexander Medvednikov 5ed338dc2e bring back map.str() 2019-08-05 04:34:12 +02:00
Alexander Medvednikov 8d3617b3de fix fn_test.v and urllib.v 2019-08-05 03:31:22 +02:00
Alexander Medvednikov 350e13679c force `()` in complex bool expressions: `(a && b) || c` instead of `a && b || c` 2019-08-05 03:22:28 +02:00
Alexander Medvednikov 4bc1f73fd0 fix gg.v 2019-08-04 09:46:49 +02:00
Alexander Medvednikov ee437de8d3 type name check fixes 2019-08-04 09:38:46 +02:00
Alexander Medvednikov 8bce5cb810 force snake_case in struct fields 2019-08-04 09:18:16 +02:00
Alexander Medvednikov 576192949d fixed size array with const size: `numbers := [N]int` 2019-08-04 04:11:16 +02:00
Nicolas Sauzede f306fbb2f0 net connect: fix error/return type 2019-08-04 01:46:55 +02:00
Alexander Medvednikov 43fb954234 os: fix executable on FreeBSD and older C compilers 2019-08-04 00:16:37 +02:00
Alexander Medvednikov 9eb385d9ee Revert "remove pg from vlib"
This reverts commit 15c5f671f0.
2019-08-04 00:11:56 +02:00
Alvydas Vitkauskas 331d6f98ee string: fix bug and add tests for string.count 2019-08-03 22:24:03 +02:00
Delyan Angelov 93d27b0b9f vweb assets: the assets cache files are now immutable after creation. (#1454) 2019-08-03 22:16:26 +10:00
joe-conigliaro 45e76609b0
vweb.assets: adds AssetManager for combining/minifying/caching css & js assets (#1452)
* start

* more work

* more

* more work

* update comments

* add back mut

* make minify faster

* add mut

* revert option size

* ret bool from public methods not ?bool for now

* update comments etc

* update comment

* dont return option for now

* clean up
2019-08-03 20:09:09 +10:00
Alexander Medvednikov e446f988f7 clean up map initialization 2019-08-03 10:26:36 +02:00
Alexander Medvednikov a5f5b52204 `map := { 'foo': 'bar' }` syntax 2019-08-03 10:20:04 +02:00
Joe Conigliaro bfddb9a80f make array.hex() use lowercase 2019-08-03 08:23:13 +02:00
Alexander Medvednikov 15c5f671f0 remove pg from vlib 2019-08-03 03:49:17 +02:00
Alvydas Vitkauskas bfdce806c4 fix string.count 2019-08-03 03:41:15 +02:00
joe-conigliaro d4c07d9b66 hash.crc32: modify sum methods to take []byte instead of string 2019-08-03 03:40:54 +02:00
Alexander Medvednikov 34a98e3df0 vweb fixes 2019-08-03 02:27:56 +02:00
Alexander Medvednikov 9e380e2886 vweb: clean up 2019-08-02 23:45:36 +02:00
Alexander Medvednikov b2874f1200 vweb: fix get_cookie() and redirect() 2019-08-02 23:41:02 +02:00
joe-conigliaro faf2f9920e string.v: string.count(substr) 2019-08-02 23:30:22 +02:00
joe-conigliaro 9e76d8a638 net.urllib: fix values (used for query string/form data) 2019-08-02 23:28:55 +02:00
Vitaly Takmazov 910f350a26 string_test: fix randomly failed test
* memory should be initialized with zeros before creating string
* there is no string([]array) constructor, string(byteptr) does not count length correctly, using string(byteptr, len) to fix
2019-08-02 19:20:36 +02:00
Alexander Medvednikov ed3f1d315b vweb: remove favicon hack 2019-08-02 10:15:20 +00:00
Alexander Medvednikov 8990eb06ec Revert "remove vlib/glfw (it's a vpm module now)"
This reverts commit cdfc4c8372.
2019-08-02 11:33:49 +02:00
joe-conigliaro 7bf1c7f005 net.urllib: change confusing name of internal method 2019-08-02 08:52:37 +02:00
joe-conigliaro 2bdbc327d9 vlib.crypto: add last commit to help track changes. (#1426) 2019-08-02 06:37:19 +02:00
unknown-v a27165f07e add []u64.str() 2019-08-02 06:07:16 +02:00
joe-conigliaro be0796ce14 urllib: fix error message 2019-08-02 06:00:34 +02:00
Alexander Medvednikov 81da1f1ab2 vweb: run app.init() once 2019-08-02 05:54:40 +02:00
Alexander Medvednikov f81562ee7e vweb: 404 2019-08-02 04:11:42 +02:00
joe-conigliaro 8369525d8a net.urllib: fix unescape 2019-08-02 00:31:47 +02:00
Sylvio Tavares 0e798b4c51 time: fix rand() 2019-08-02 00:31:02 +02:00
Alexander Medvednikov b57752e67e vweb: parse request headers 2019-08-01 18:51:21 +02:00
Alexander Medvednikov 3580179602 vweb: fix actions with ? 2019-08-01 17:57:06 +02:00
Alexander Medvednikov cdfc4c8372 remove vlib/glfw (it's a vpm module now) 2019-08-01 17:31:04 +02:00
Alexander Medvednikov a7e464fee9 user modules + `v install` from vpm 2019-08-01 17:28:25 +02:00
joe-conigliaro d3c89273e8 net.urllib module 2019-08-01 15:01:03 +02:00
vitalyster 0197f20d47 make_tests.bat: exit with error on failed test 2019-08-01 13:23:36 +02:00
Alexander Medvednikov eb313ebb5b
option: increase the temporary limit 2019-08-01 01:19:45 +02:00
Alvydas Vitkauskas cd49c2103b os: fix read_lines for win/dos files on unix 2019-08-01 00:48:10 +02:00
unknown-v b124539507 Update download_win.v 2019-07-31 23:22:05 +02:00
Alexander Medvednikov 0243f9b0e9 term: remove enable_term_color_win() 2019-07-31 23:19:27 +02:00
Alexander Medvednikov 2c7e0c0257 http: fix download_win.v 2019-07-31 23:03:38 +02:00
Alexander Medvednikov 8058bf3750 http_nix.v: remove remaining C code 2019-07-31 23:01:06 +02:00
Alexander Medvednikov 448aaa36f2 http: clean up http_win.v and remove all remaining C code 2019-07-31 22:54:55 +02:00
unknown-v 46154c25b5 Update http_win.v 2019-07-31 22:45:29 +02:00
Alexander Medvednikov 54d2f9921f http: Windows fixes + clean up 2019-07-31 22:27:39 +02:00
Alexander Medvednikov aac8503d83 http: use optionals (finally) 2019-07-31 22:15:24 +02:00
Alexander Medvednikov d3d4ee6b39 http: replace escape() with escape_url() 2019-07-31 20:57:34 +02:00
Vitaly Takmazov 550e8cd0cb http.escape and http.unescape for windows 2019-07-31 19:23:17 +02:00
Felix Scholz 12ecd0f3dc term: allow more colors to be used (bright styled ansi, rgb and hex)
* introduce bright versions of standard ansi colors

* allow developer to colorize messages with rgb

* allow developer to colorize messages using hex

* fix broken formatting
2019-07-31 19:22:38 +02:00
vitalyster 37a0e6ebef Travis: run tests for Windows (#1403) 2019-07-31 19:01:52 +02:00
Alvydas Vitkauskas 2e1da4b4bc Merge pull request #1050 from avitkauskas/fix-read-lines
os: fix read_lines
2019-07-31 10:56:36 +02:00
Alexander Medvednikov ddb4f45b02 another map bug fix + fix some warnings 2019-07-31 10:47:58 +02:00
jilio fa24a0cec5 os: fix is_dir 2019-07-31 10:38:29 +02:00
Alexander Medvednikov e592485395 map: test the new fix 2019-07-31 09:57:19 +02:00
Alexander Medvednikov a80f32254e map: fix delete() 2019-07-31 09:56:14 +02:00
vitalyster 375bc1352c f64.eq()
fixes float comparison tests
2019-07-31 09:20:40 +02:00
Alexander Medvednikov e0b45e33ea string: fix a bug with split() 2019-07-31 07:26:22 +02:00
jilio 6294c7878e vweb: recursive handle_static with mime types 2019-07-31 06:10:53 +02:00
Alexander Medvednikov 27d09ed514 http: make escape public on Windows 2019-07-31 04:00:43 +02:00
Alexander Medvednikov 8a7ddd102e vweb: tmpl fixes 2019-07-31 04:00:43 +02:00
Alexander Medvednikov 95d76993c9 .div hack 2019-07-31 04:00:43 +02:00
Alexander Medvednikov 8bb41d2de5 vweb: print address of the app 2019-07-31 04:00:43 +02:00
joe-conigliaro 1202631fa6 crypto.rand module 2019-07-31 03:24:12 +02:00
Alexander Medvednikov 17e8c1d628 map.delete(key) 2019-07-30 21:27:31 +02:00
Alexander Medvednikov ad8b105b2c vweb example 2019-07-30 21:15:17 +02:00
Alexander Medvednikov 79be98d2fb Revert "Support for the printf optimisation for windows and wide strings"
This reverts commit acd28fa495.
2019-07-30 18:28:00 +02:00
Alexander Medvednikov 3e458a8801 vweb: small fixes 2019-07-30 18:27:52 +02:00
F1ssi0N acd28fa495 Support for the printf optimisation for windows and wide strings 2019-07-30 18:04:19 +02:00
Alexander Medvednikov 548611bedc vweb: serve static files and vweb.text() 2019-07-30 15:53:35 +02:00
joe-conigliaro 5e57d099d7 v panic debug information 2019-07-30 15:08:14 +02:00
Richard Warburton 07ed320110 sync: WaitGroup 2019-07-30 15:06:16 +02:00
Alexander Medvednikov a6df3e51d2 vweb.json() 2019-07-30 05:13:44 +02:00
Vitaly Takmazov 468aac9750 glfw: add MacPorts library path 2019-07-30 03:49:12 +02:00
Vitaly Takmazov a2d4d38e8a pg: add Darwin flag for MacPorts installation path 2019-07-30 03:48:49 +02:00
Joe Conigliaro cfe581e2ab fix term 2019-07-30 03:15:46 +02:00
Alexander Medvednikov 69b6e682cb pg: fix GCC compilation error 2019-07-30 00:28:35 +02:00
Alexander Medvednikov 5bb8416baf
update vweb readme 2019-07-29 19:46:26 +02:00
Delyan Angelov 4a1970a322 http: return ?string 2019-07-29 19:18:26 +02:00
Alexander Medvednikov 460b4ee39f
vweb documentation 2019-07-29 18:50:25 +02:00
Alexander Medvednikov 207bab5f79 generics, vweb, comptime codegen, etc 2019-07-29 18:24:48 +02:00
Mike 'Fuzzy' Partin ff72d9104d log: added timestamps 2019-07-29 16:34:22 +02:00
joe-conigliaro d87030972e crypto: use new copy & clone 2019-07-29 16:33:35 +02:00
Richard Warburton 6701c3b263 Fixes #1362 2019-07-29 16:32:39 +02:00
Vitalie Ciubotaru 4100cca613 bf: fix a bug in bf.resize() (var name coincides with function name) 2019-07-29 16:31:48 +02:00
Alvydas Vitkauskas 8484de86c7 fix #1353 os.get_line 2019-07-29 04:44:54 +02:00
joe-conigliaro 45029f8c86 term: move enable_term_color_win() to colors_win.v 2019-07-29 04:44:21 +02:00
joe-conigliaro df06eee5e8 fn copy(dst, src) []byte 2019-07-28 17:19:59 +02:00
joe-conigliaro c7edeb00a8 term: add better error detection on Windows 2019-07-28 17:19:03 +02:00
Delyan Angelov 9cd2d68505 Fix #1334. Module glfw now imports gl. 2019-07-27 18:36:33 +02:00
joe-conigliaro 920ac3f92e crypto.rc4 module 2019-07-26 16:48:49 +02:00
joe-conigliaro ebf858b9ae crypto: remove unnecessary casts and comments 2019-07-25 18:41:38 +02:00
Joe Conigliaro 655cad58b2 add note & fix typo 2019-07-25 18:13:29 +02:00
Alexander Medvednikov 20a885ff1d []byte.clone() 2019-07-25 18:07:25 +02:00
Alexander Medvednikov d8b83bdd00 crypto: add Go's license 2019-07-25 18:07:25 +02:00
joe-conigliaro 61f3982ee8 crypto.aes module 2019-07-25 17:49:57 +02:00
Alexander Medvednikov 2ac579ca0a wrap up the new mut check 2019-07-25 14:13:35 +02:00
Alexander Medvednikov ceb0139329 fix tests 2019-07-25 14:06:26 +02:00
unknown-v 082098ab67 sync_win.v : Add a Missing Closing Bracket 2019-07-25 12:25:38 +02:00
Alexander Medvednikov 3a8cdadcf5 free strings 2019-07-25 01:22:45 +02:00
Alexander Medvednikov 299d41e3b9 os: fix a memory leak in File.write(string) 2019-07-24 22:47:06 +02:00
0x9ef a3e9a36553 Fix returned hash sum type 2019-07-24 20:29:11 +02:00
F1ssi0N ca70d1f8a3 os: Make windows allocations more consistent & LocalFree args_list
if max is 512 then allocate `max * sizeof(wchar_t)`
2019-07-24 19:10:06 +02:00
F1ssi0N f8bc893972 Re-add the case for msvc now that it is a valid comp-time option 2019-07-24 18:14:44 +02:00
AtjonTV 99355ae8b2 os: Implement a read-all for STDIN 2019-07-24 18:14:13 +02:00
yep84 94a599d630 log: allow file logging 2019-07-24 17:50:29 +02:00
0x9ef aea6a8075b Windows mutex 2019-07-24 17:36:20 +02:00
Alexander Medvednikov 2306901e6e os.flush_stdout() 2019-07-24 16:15:28 +02:00
Maciej Sopyło 58577f57c6 fix: segfault when using string.ustring_tmp() 2019-07-24 16:06:12 +02:00
Emily Hudson 32aae80a64 Windows: fix some heap corruptions, fix msvc not building with unicode flags, fix os.getwd, fix mscrazy using a less recent installation 2019-07-24 15:00:26 +02:00
Vitaly Takmazov 0bbefca875 Windows: unicode command line 2019-07-24 14:32:36 +02:00
Alexander Medvednikov 7f29928aec examples: fix news_fetcher on Windows 2019-07-24 12:34:25 +02:00
vitalyster fcb1f211e3 Windows Unicode I/O 2019-07-24 12:16:45 +02:00
Nick Treleaven 6eb8766e59 http.new_request: Don't ignore mutated variables url, data 2019-07-24 00:32:41 +02:00
Justice Suh d72c859bf9 net: socket error handling 2019-07-24 00:31:39 +02:00
Alexander Medvednikov 2291e9fcfe Revert "Windows Unicode support"
This reverts commit 8462e99bc5.
2019-07-24 00:24:34 +02:00
d2verb 88758082d2 scanner.v: refactoring 2019-07-24 00:06:48 +02:00
vitalyster 8462e99bc5 Windows Unicode support 2019-07-23 23:40:24 +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 527b9e13fa `key in map` syntax 2019-07-23 23:00:09 +02:00
Vitalie Ciubotaru bd95f5bf8f bf: add basic documentation 2019-07-23 18:29:04 +02:00
TillCoyote 732099fa08 math: hypot() 2019-07-23 18:28:30 +02:00
Jonathan Vice d69bac5565 glfw: fix typo 2019-07-23 18:27:53 +02:00
Archan Patkar 7b4c3ec618 math/complex: restructuring cmath as a submodule of math 2019-07-23 13:35:44 +02:00
unknown-v 981185e42f Windows displays a NaN as -1.#IND
https://stackoverflow.com/a/347940
2019-07-23 00:29:47 +02:00
Alexander Medvednikov a2a0b149b2 examples/graph: update the graph instantly; add a couple of graphs 2019-07-23 00:24:42 +02:00
Rendims 5375038d88 string: avoid double allocation in trim_space() 2019-07-23 00:13:00 +02:00
Alexander Medvednikov 390394b56b string: make substr() copy the data, like in Java and C#; remove .cstr()
this makes managing memory used by strings much easier
V strings are now fully compatible with C strings
2019-07-22 17:03:45 +02:00
Alexander Medvednikov 23c5f88f3e Revert "Windows Unicode I/O "
This reverts commit 3e005074a3.
2019-07-21 17:29:40 +02:00
Alexander Medvednikov 9c9fe7029e fix os.is_dir on Windows 2019-07-21 17:14:25 +02:00
Alexander Medvednikov 4d5336897e array.slice(): bounds out of range check 2019-07-21 16:55:04 +02:00
Alexander Medvednikov 5d188130e5 fix memory free 2019-07-21 16:30:10 +02:00
Alexander Medvednikov 40c31f701f free arrays when they are out of scope
main.v: update help
2019-07-21 14:42:31 +02:00
Alexander Medvednikov a6e4720a4d
os: fix popen on Windows 2019-07-21 13:37:27 +02:00
vitalyster 3e005074a3 Windows Unicode I/O 2019-07-21 13:29:32 +02:00
Alexander Medvednikov 6e6f6bc387 free/malloc fixes 2019-07-21 12:36:21 +02:00
Alexander Medvednikov 975286302c fix Tetris onkeydown 2019-07-21 11:56:43 +02:00
Alexander Medvednikov c3c6648c57 string(bytes_array) cast 2019-07-20 22:03:38 +02:00
Alexander Medvednikov 7f512eaf72 examples/hot_code_reloading: graph builder improvements 2019-07-20 17:59:40 +02:00
Alexander Medvednikov 5c12d13b19 builtin: make string.add() private 2019-07-20 16:43:33 +02:00
Alexander Medvednikov 72159d4169 vlib/glm: fix glm_test.v 2019-07-20 16:39:09 +02:00
Alexander Medvednikov 769cda1d1f simplify gg; remove forced OpenGL dependency; graph builder /w hot code reloading 2019-07-20 16:06:15 +02:00
Archan Patkar 760034b6b1 math/stats: added basic stats operations 2019-07-19 11:50:32 +02:00
0x9ef d6ddfa124d Fixed get_error_msg for *nix
* Fixed undefined: get_error_msg
2019-07-18 20:21:48 +02:00
joe-conigliaro ea2412297d crypto.sha512: change hardcoded u64's back to consts 2019-07-18 11:34:04 +02:00
joe-conigliaro 43070412f7 implement crypto.sha256 + some crypto cleanup 2019-07-18 10:50:05 +02:00
Vitalie Ciubotaru c0911ea74b bf: add reverse(), resize(), pos() and rotate() 2019-07-18 10:49:32 +02:00
Alexander Medvednikov f5c8ee4742 string(buffer, len) cast 2019-07-18 04:50:44 +02:00
d2verb 92fbe56276 table: fix #1219 2019-07-18 04:32:49 +02:00
Alexander Medvednikov c35adbea91 vfmt fixes 2019-07-17 21:00:39 +02:00
joe-conigliaro 8cd1f962d3 implement missing string to int type methods (#1210)
* implement missing string to int methods

* make number base auto detected
2019-07-17 20:11:14 +02:00
unknown-v 9d4b4df54f net : fix error msg
from 
os.hostname() cannot get the host name
to
net.hostname() cannot get the host name
2019-07-17 18:42:10 +02:00
joe-conigliaro 0ca58aba5e Fix array.reverse() test 2019-07-17 18:35:40 +02:00
Joe Conigliaro 09fb000e67 fix 2019-07-17 18:21:39 +02:00
Alexander Medvednikov 251e32948e fix Windows build: move hostname to net/ 2019-07-17 13:50:58 +02:00
Alexander Medvednikov b9f3f2d622 v script 2019-07-17 13:49:42 +02:00
joe-conigliaro 55b8a9acb9 crypto.sha512 2019-07-17 11:00:15 +02:00
Ned Palacios 9782d85709 enable render term color on windows by default 2019-07-17 02:52:17 +02:00
Yash Tripathi 982496ffce math: faster factorial function 2019-07-17 00:03:51 +02:00
unknown-v a743ecaff9 Windows : fix build
curl -Os https://raw.githubusercontent.com/vlang/vc/master/v.c
cc -std=gnu11 -w -o v v.c -lm
ccK5ic4o.o:v.c:(.text+0x6f62): undefined reference to `__imp_gethostname'
collect2.exe: error: ld returned 1 exit status
2019-07-17 00:02:31 +02:00
0x9ef 8ef3313d63 Fixed buf on hostname and added optional type.
Before submitting this PR, submit https://github.com/vlang/v/pull/1188
2019-07-17 00:02:07 +02:00
0x9ef 91a712fdf0 Check for max error code overflow
If do not check the overflow of the maximum error code (15841), this can lead to a program crash.
2019-07-17 00:01:42 +02:00
Rustem B 47b0221b82 os: hostname function 2019-07-16 19:23:47 +02:00
Joe Conigliaro 36442976c3 fix dir_exists on win 2019-07-16 18:31:49 +02:00
Ned Palacios e638e47af5 `setenv` and `unsetenv` for windows fix 2019-07-16 17:18:08 +02:00
Alexander Medvednikov f5fa43d2fa os: fix executable() for all other BSDs 2019-07-16 16:37:59 +02:00
Alexander Medvednikov 674969665e freebsd fix 2019-07-16 16:22:25 +02:00
Alexander Medvednikov 6fabd36732 freebsd: fix os.executable() 2019-07-16 16:19:55 +02:00
Ned Palacios c3ad75191d os: fix 'rm' and 'rmdir' implementation on windows 2019-07-16 15:55:51 +02:00
Alexander Medvednikov 8aa7da1be1 http_win: fix BUF_MAX 2019-07-16 15:29:27 +02:00
joe-conigliaro 9c586e7e92 crypto md5 2019-07-16 14:20:51 +02:00
Alexander Medvednikov 961ffb1868 Windows: temporary fix of dir_exists 2019-07-16 03:17:49 +02:00
Alexander Medvednikov 9c63cac54d another Windows fix 2019-07-16 02:06:39 +02:00
Alexander Medvednikov 090cdcf3b9 os: fix PathSeparator on Windows 2019-07-16 01:59:28 +02:00
Alexander Medvednikov cc06fe7ae6 os.dir(); fix vroot on Windows 2019-07-16 01:57:06 +02:00
Alexander Medvednikov 24a1e0e24a better os.executable on macos 2019-07-15 23:25:11 +02:00
Justice Suh b20d7ad086 builtin: Move free from array.v to builtin.v 2019-07-15 22:56:10 +02:00
Alexander Medvednikov 840e496a51 force snake_case in variable names 2019-07-15 22:53:33 +02:00
Archan Patkar d58174e77f math: moved fraction to math/fraction 2019-07-15 21:16:41 +02:00
0x9ef 9b5383341d Add get_error_msg 2019-07-15 20:39:09 +02:00
Alexander Medvednikov ecda895003 move zip C dependency to thirdparty/ 2019-07-15 19:30:53 +02:00
Alexander Medvednikov 449fd372f9 *_nix.v support 2019-07-15 19:23:09 +02:00
Alexander Medvednikov b36a9f7e55 glfw always on top 2019-07-15 19:23:09 +02:00
Paparoni Alvardo f27777af56 Add wrapper of https://github.com/kuba--/zip 2019-07-15 18:55:00 +02:00
joe-conigliaro a7529b7b05 sha1 implementation + helper funcs 2019-07-15 17:49:01 +02:00
Alexander Medvednikov 7c6f59afa6 FreeBSD support 2019-07-15 17:24:44 +02:00
Alexander Medvednikov 5a9116b697 http: make do() public 2019-07-15 16:06:23 +02:00
Nick Treleaven d8df8474bc http_win.do: Reject URL without '://'
Before it would accept 'domain/path' but set host = 'ath'.
2019-07-15 15:43:54 +02:00
Paparoni Alvardo 7058333f17 Add get_module_filename 2019-07-15 14:27:33 +02:00
Archan Patkar 4af58e0925 cmath: added arg, log and complex pow operations 2019-07-15 14:27:03 +02:00
d2verb 916b13b286 fix maps 2019-07-15 12:33:18 +02:00
Alexander Medvednikov 3b1964e9df migrate remaining code to the new maps 2019-07-14 22:26:21 +02:00
Alexander Medvednikov f7dbbf5810 re-write map.v and update the compiler 2019-07-14 22:08:17 +02:00
Vitalie Ciubotaru 9a3baf5609 bf: add setall(), clearall(), string() and str2bf() 2019-07-14 18:24:37 +02:00
Alexander Medvednikov 7fa1f423e2 fix time_test.v 2019-07-14 17:08:14 +02:00
joe-conigliaro 6c2e313155 add missing implementation of os.getexepath for mac 2019-07-14 16:50:24 +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
0x9ef 82ed0156c5 Fixed clang build for windows.
Fixed:
C:\Users\C182~1\AppData\Local\Temp\ccb5oFDP.o: In function `os__fork':
C:/Users/─рэ //.vlang//v2.exe.c:4831: undefined reference to `fork'
C:\Users\C182~1\AppData\Local\Temp\ccb5oFDP.o: In function `os__wait':
C:/Users/─рэ //.vlang//v2.exe.c:4840: undefined reference to `wait'
collect2.exe: error: ld returned 1 exit status
2019-07-14 12:38:03 +02:00
Justice Suh 436d7592c7 os: fork() and wait() 2019-07-14 10:22:41 +02:00
Justice Suh 5dfd5fa3e7 net: add windows socket support 2019-07-14 00:04:45 +02:00
d2verb 2cb12b4f4e rand: change rand.seed() to receive seed value 2019-07-13 18:17:45 +02:00
Alexander Medvednikov af7d49103b json: Windows fix 2019-07-13 16:47:23 +02:00
joe-conigliaro b4afa964fc hash/crc32 2019-07-13 15:11:32 +02:00
Justice Suh 5d7bac2016 os: add flush method 2019-07-13 12:30:52 +02:00
unknown-v 3281e44e84 http_win : fix buf length
Line 157 : buf[nr_read] = 0 
set the null character '\0'
2019-07-13 12:30:21 +02:00
Vitalie Ciubotaru ef899b7c09 bf: add cmp(), join(), slice(), popcount() and hamming() 2019-07-12 20:46:37 +02:00
Koustav Chowdhury 2538a7e752 math : fix typos 2019-07-12 20:45:56 +02:00
Nick Treleaven 4c4e0c690c Fix missing rename of pos -> hpos; move `s` next to use site 2019-07-12 20:43:42 +02:00
aguspiza d0e7d0070d fix travis windows user home 2019-07-12 20:35:01 +02:00
Alexander Medvednikov 5baff9beda http: Windows fixes 2019-07-12 16:26:02 +02:00
Marco Böttcher cb9fb66ccf flag: added a simple command line parser 2019-07-12 15:47:27 +02:00
Archan Patkar 846d4e2210 cmath: Added Cot,Sec,Cosec support for complex 2019-07-12 12:56:21 +02:00
eulerkochy 7f4c3cda4d reduce redundant code, add tests for reduce and gcd 2019-07-12 08:50:11 +02:00
Koustav Chowdhury 08866f1331 math : add error and gamma functions; sort all functions 2019-07-12 07:46:40 +02:00
joe-conigliaro 9a957ccc18 module aliasing & file import scope 2019-07-12 07:37:54 +02:00
Alexander Medvednikov e246833daa math.v note 2019-07-12 07:01:14 +02:00
Alexander Medvednikov 5b3295db94 remove # from gg and glm 2019-07-12 06:50:25 +02:00
Alexander Medvednikov 28d379dc7b make glfw work on Windows 2019-07-12 05:04:27 +02:00
Alexander Medvednikov f834644db4 make gg work on Windows; prebuild glad and cJSON; new ft module 2019-07-12 04:50:14 +02:00
eulerkochy 06e7354d18 change log2 implementation to use C.log2() 2019-07-11 20:42:51 +02:00
Archan Patkar 7701be2242 cmath: added inverse trig operations 2019-07-11 16:53:34 +02:00
Alexander Medvednikov 4a8ba9756f disable u32 check for now 2019-07-10 22:05:50 +02:00
Alexander Medvednikov e1a6453302 move Complex logic to cmath
It was causing problems with cross compiling for Linux, and it should be
a separate module anyway, just like in Go and Python.
2019-07-10 21:47:13 +02:00
Alexander Medvednikov 3d4cd0bbc0 check integer const overflow at compilation 2019-07-10 21:22:03 +02:00
Archan Patkar 69d2db0f1e math: added complex trig operations 2019-07-10 20:50:43 +02:00
hazohelet 00ea112b66 complex, fraction: simplify and format source code 2019-07-10 13:51:48 +02:00
Alexander Medvednikov 28843a12c7 cache string.hash() 2019-07-10 10:00:12 +02:00
Alexander Medvednikov e1ddac1590 utf8: remove unused UTF8_CHAR_LEN macro and add a simple utf8 test 2019-07-10 09:07:04 +02:00
Koustav Chowdhury 385f47c0cd add abs for complex, add tests (#1043) 2019-07-09 21:12:51 +02:00
Vitalie Ciubotaru c4fcfcec88 bf: add a module implementing operations with bit arrays (#1049) 2019-07-09 21:11:09 +02:00
Archan Patkar 3f916efb64 math: additional complex operations with tests 2019-07-09 20:51:46 +02:00
archanpatkar f767218107 term: optimized move function 2019-07-07 22:48:20 +02:00
hazohelet ccf733ac95 add angle func 2019-07-07 22:42:03 +02:00
eulerkochy b40ad7c83f save a byteptr memory, add tests 2019-07-07 22:37:17 +02:00
Alexander Medvednikov de8dc4cddb hot code reloading examples 2019-07-07 22:02:27 +02:00
joe-conigliaro 8a2d25247f submodules 2019-07-07 01:22:47 +02:00
archanpatkar 818f8252f6 math: basic complex number support with tests 2019-07-07 01:16:49 +02:00
Alexander Medvednikov d47e2f113f Revert "make function arguments immutable"
This reverts commit 0f0ed8d716.
2019-07-05 02:44:22 +02:00
Alexander Medvednikov 0f0ed8d716 make function arguments immutable 2019-07-05 00:24:13 +02:00
Alexander Medvednikov 74dbb1bce3 interface: fix function is private bug 2019-07-04 23:30:11 +02:00
Alexander Medvednikov ebbea9f560 Revert "Added const INVALID_HANDLE_VALUE"
This reverts commit adef37f0f4.
2019-07-04 22:39:20 +02:00
Alexander Medvednikov 92528205c1 minor fixes 2019-07-04 22:39:15 +02:00
0x9ef adef37f0f4 Added const INVALID_HANDLE_VALUE 2019-07-04 22:26:07 +02:00
Justice Suh 9e4ae929a4 os: remove test file 2019-07-04 20:37:35 +02:00
joe-conigliaro 4e1afc148a os: add term colors for Windows +minor fixes 2019-07-04 17:39:35 +02:00
archanpatkar b745234a52 math:added basic tests for fraction and fixed typo 2019-07-04 17:38:36 +02:00
Alexander Medvednikov 300ed59598 do not allow `import builtin` 2019-07-04 17:36:53 +02:00
Alexander Medvednikov 8f10e37370 make << work with appending arrays; PostgreSQL driver 2019-07-04 17:31:14 +02:00
Cytown fcf8909c75 add test for array_repeat with f32/f64
Signed-off-by: Cytown <cytown@gmail.com>
2019-07-04 13:01:51 +02:00
Joe Conigliaro 6b0e4a1d7b fix ls() win not ret []string when cant open dir 2019-07-04 12:59:41 +02:00
Kriyszig 801e06318f Factorial doesn't accept negative numbers
Previously factorial could accept negative number which isn't defined
2019-07-04 12:59:06 +02:00
Alexander Medvednikov 68ed555e91 V 0.1.12 2019-07-04 02:21:27 +02:00
joe-conigliaro 4d9c6197fd initial Implementation of ls() for windows 2019-07-04 02:16:39 +02:00
Alexander Medvednikov 5d4d3b838b StringsBuilder => strings.Builder; strings.repeat() 2019-07-03 22:18:46 +02:00
Archan Patkar e35ff0533b math: adopted i64 in Fraction and typo fixed 2019-07-03 21:50:54 +02:00
Alexander Medvednikov 8c36b9499d make json work with new optionals 2019-07-03 21:50:06 +02:00
Alexander Medvednikov dec0d961f5 os: clean up file functions, use optionals 2019-07-03 21:37:12 +02:00
archanpatkar ffb4da791d math: converted gcd and lcm to support i64 2019-07-03 19:40:44 +02:00
nxshock b3e5c89ba9 time: add is_leap_year(year int) 2019-07-03 18:55:07 +02:00
pverghese 05ef1e0681 Removed unnecessary printf statement which corrupts output of http.get 2019-07-03 16:13:52 +02:00
archanpatkar 5e0ae9a429 net: added listen_backlog to enable custom backlog 2019-07-03 16:13:02 +02:00
archanpatkar 4037019bb7 Added support for Fractions 2019-07-03 16:07:59 +02:00
Alexander Medvednikov 7a3b5c20dd time: fix empty unix 2019-07-03 01:27:38 +02:00
Justice Suh 5c42a31b9b os: capture signals 2019-07-02 23:08:57 +02:00
Nick Treleaven 75da1e4240 Speed up and simplify string.replace 2019-07-02 21:51:40 +02:00
S-YOU 53e439bc99 setsockopt arg optvalue supposed to be ptr 2019-07-02 21:49:05 +02:00
Alexander Medvednikov 1bbf3a3a0c make compiler 2019-07-02 21:45:51 +02:00
Alexander Medvednikov a9b8bc067f enums (`mode == .default_mode` syntax); fix `foo.bar[0].baz = val` 2019-07-02 21:39:26 +02:00
Justice Suh 859c8ffdb8 net: socket send and recv 2019-07-02 19:45:38 +02:00
RustemB cd4fe63355 math: digits function; SqrtTau; extra spaces; re writed doc's to correct form; test for factorial 2019-07-02 19:19:02 +02:00
joe-conigliaro 4ed67fbe7e implement get_line & get_raw_line for windows + REPL 2019-07-02 16:39:40 +02:00
lemoncmd b9586a4017 builtin : fix buffer overflow and i64 issue with hex() 2019-07-02 15:18:56 +02:00
aguspiza 1cd95091f2 remove additional line from write_file 2019-07-01 23:46:06 +02:00
0x9ef 01d5f4d744 Change permission from 'r' to 'rb'
it is preferable to open the file in binary mode.
2019-07-01 23:41:32 +02:00
0x9ef 1ca20196d0 Created os_win.v and added `get_file_handle` 2019-07-01 17:57:55 +02:00
Alexander Medvednikov 95841a31d4 Revert "Added permission bits."
This reverts commit ae1313a35c.
2019-07-01 17:46:28 +02:00
0x9ef ae1313a35c Added permission bits. 2019-07-01 17:37:01 +02:00
musou1500 668646f8f9 add `str` function for `rune` 2019-07-01 17:36:23 +02:00
Justice Suh 571410dd48 net: low level socket api 2019-07-01 17:31:38 +02:00
archanpatkar 235a7ecd7f Restructured termcolor to term module 2019-07-01 17:26:23 +02:00
Antoine Folie 32e32cee5c builtin : fix issue with int.hex 2019-07-01 17:20:14 +02:00
Alexander Medvednikov 61c7fa073b fix compilation on Linux 2019-07-01 17:04:09 +02:00
Alexander Medvednikov 99a9a6572a lots of Windows fixes and cross compilation for Windows 2019-07-01 16:51:17 +02:00
Alexander Medvednikov 52f93ae45f fix http 2019-07-01 02:58:49 +02:00
Alexander Medvednikov 36d343e931 fix examples 2019-07-01 02:52:50 +02:00
0x9ef 87fb898864 Create types_win.v for Win API basic types. 2019-07-01 02:45:40 +02:00
Alexander Medvednikov 5936ab16c8 fix maps; use maps for storing functions; verify struct initialization 2019-07-01 02:24:39 +02:00
0x9ef 42a622c10f Create const.v for Unix/Win32 API constants. 2019-06-30 21:59:56 +02:00
Alexander Medvednikov ef5a91a87a os: make write_bytes() public 2019-06-30 21:07:24 +02:00
Alexander Medvednikov fde0e39abf net: clean up 2019-06-30 21:00:22 +02:00
Alexander Medvednikov 6a1b16c72c net: listen and accept 2019-06-30 20:57:25 +02:00
Alexander Medvednikov 9062338cb4 fix compilation 2019-06-30 20:48:26 +02:00
Alexander Medvednikov 61b51f6149 os.File clean up + socket.v (dial()) 2019-06-30 20:28:50 +02:00
Alexander Medvednikov 386367c3d5 os: remove unused functions 2019-06-30 20:28:50 +02:00
paolopaoletto e2a535c3ce math.v: log_n, log2, exp2, cbrt and docs 2019-06-30 15:33:37 +02:00
Alexander Medvednikov 820aa3d3b3 os: remove os_mac.v and os_win.v, fix os.ls() on Windows 2019-06-30 14:57:27 +02:00
Alexander Medvednikov b0c844415d time.ticks() on Linux/macOS 2019-06-30 14:48:13 +02:00
Nick Treleaven b79defd7a9 Pre-allocate KMP prefix for string.index 2019-06-30 13:58:46 +02:00
Alexander Medvednikov 388eb36ecb map_test.v 2019-06-30 13:44:08 +02:00
chai2010 c5a0b3734a base: refine test 2019-06-30 13:17:28 +02:00
Zaoqi 437b32fe78 fmt: `id []typ` 2019-06-30 13:06:45 +02:00
Zaoqi 8d13880cab Update os.v 2019-06-30 13:05:41 +02:00
Alexander Medvednikov d0c47f3f2a array.v: make _push private 2019-06-29 23:56:55 +02:00
Alexander Medvednikov a2b80d5b3d REPL: `exit` to exit 2019-06-29 22:56:23 +02:00
Dinar Garipov f4f1622528 vlib: update and cleanup tests + fix PR template 2019-06-29 22:49:57 +02:00
Alexander Medvednikov 18525922fd Windows fixes 2019-06-29 21:26:39 +02:00
Rustem B 7eab373922 math: gcd and lcm functions 2019-06-29 17:24:55 +02:00
Alexander Medvednikov 3ddbe015b4 bring back examples 2019-06-29 12:34:32 +02:00
Alexander Medvednikov 4594d78bd6 move all vlib modules to vlib/ 2019-06-29 12:00:31 +02:00