Lukas Neubert
db0fc8fbc9
fmt: better function call wrapping inside ternary if branches ( #8604 )
...
* fmt: better funcation call wrap in singel line ifs
* tests
* format files
2021-02-06 21:46:52 +01:00
Delyan Angelov
f4b757e47d
examples: add examples/vweb/server_sent_events; implement vweb.sse
2021-02-03 16:03:06 +02:00
Louis Schmieder
4a6642b79e
vweb: fix vweb upload ( #8392 )
2021-01-29 14:48:52 +01:00
Delyan Angelov
e5a84719ca
all: require calling optfn() ?
/ optfn() or {...}
for fn optfn() ? {}
2021-01-26 16:43:17 +02:00
Delyan Angelov
728344ff65
ci: fix v test-cleancode
2021-01-25 12:55:01 +02:00
Lukas Neubert
8b61891348
fmt: smarter if condition wrapping ( #8201 )
2021-01-23 10:33:22 +02:00
Louis Schmieder
d8c94cd1fd
vweb: make multipart Content-Type header detection case-insensitive ( #8255 )
2021-01-21 21:16:25 +02:00
Louis Schmieder
f7c251f8f3
vweb: add multipart/form-data parser and file upload ( #8160 )
2021-01-21 11:08:51 +01:00
Louis Schmieder
b44ec4921f
vweb: make vweb async ( #8095 )
2021-01-21 11:08:38 +01:00
Delyan Angelov
d92f5c55ba
net: use mut and refs as receivers consistently ( #8205 )
2021-01-20 11:11:01 +01:00
Lukas Neubert
ac2c3847af
all: update copyright to 2019-2021 ( #8029 )
2021-01-18 13:20:06 +01:00
Louis Schmieder
38881e4b20
vweb: Implement chunked encoding transfer ( #8179 )
2021-01-18 13:04:21 +01:00
Lukas Neubert
16c9cbce7c
fmt: correctly increase f.line_len for write_indent ( #8174 )
2021-01-18 06:02:29 +01:00
Daniel Däschle
53941c4a0a
fmt: fix if cond break readability ( #8132 )
2021-01-16 02:12:17 +01:00
zakuro
33694665f0
fmt: align each contiguous field of struct. not the whole. ( #7981 )
2021-01-12 04:38:43 +01:00
Alexander Medvednikov
1b07710ab3
vweb: make html() return Result
2021-01-08 05:05:29 +01:00
Alexander Medvednikov
e3f8d448c1
all: [noinit] struct attribute
2021-01-08 04:49:16 +01:00
Daniel Däschle
42e60b8e27
vweb: fix array.last usage ( #7905 )
2021-01-06 01:24:36 +01:00
Daniel Däschle
9f74be4cf6
vweb: route to index dynamically ( #7782 )
2021-01-05 01:30:27 +01:00
Alexander Medvednikov
89bbbe0ec0
vweb: vfmt vweb.v
2021-01-03 17:03:18 +01:00
Delyan Angelov
c1e0e01f8f
vweb: simplify the [post] pub fn
no routing fix check
2021-01-02 13:47:54 +02:00
Delyan Angelov
d912ff165b
ci: fix failing vweb test, increase timeout for vweb_test_server.v, add VWEB_LOGFILE
2021-01-02 13:33:26 +02:00
Louis Schmieder
f7135979f5
vweb: fixed req type without path ( #7792 )
2021-01-01 21:57:45 +01:00
Daniel Däschle
ac22fe998a
vweb: default init methods ( #7779 )
2021-01-01 17:24:54 +01:00
Alexander Medvednikov
3ffdcd8910
vweb: embed context
2020-12-31 17:07:27 +01:00
Delyan Angelov
d563261e58
vweb: run vfmt, add it to v test-cleancode
2020-12-27 11:38:12 +02:00
Delyan Angelov
b1f6ff8871
ci: fix failing vweb_routing_checks.vv
2020-12-20 11:59:38 +02:00
Louis Schmieder
d96dcefb06
vweb: http methods check ( #7371 )
2020-12-18 07:34:06 +01:00
Emily Hudson
553ecf63e7
vlib/io: fix reader bugs, make read_all take a config struct ( #7361 )
2020-12-16 18:22:26 +01:00
Dialga
4500aade95
vweb: fix scan_static_directory ( #7275 )
2020-12-12 19:13:43 +02:00
Emily Hudson
cd2a2cef25
vlib/net: add buffered IO, x.net -> net ( #6754 )
2020-11-15 22:54:47 +02:00
Delyan Angelov
2dc9a45e06
vfmt: fix eating of app.$method(vars)
; format vlib/vweb/vweb.v
2020-11-14 13:55:10 +02:00
pancake
2994e7150f
vweb: check function and route parameter count ( #6761 )
2020-11-08 09:14:24 +01:00
Delyan Angelov
b14f779853
vweb: add a placeholder for checking route validity at startup
2020-11-05 22:59:11 +02:00
Alexander Medvednikov
a0bf796926
autofree: handle SelectorExpr and fix json
2020-11-02 00:57:45 +01:00
Alexander Medvednikov
dca3d13606
autofree: another lambda fix
2020-10-30 00:43:04 +01:00
Delyan Angelov
d261844da0
vweb: fix warnings about fn f(x, y Type)
2020-10-15 22:04:42 +03:00
Daniel Däschle
06cade6c31
all: change .ReturnType and .Type to .return_type and .typ ( #6494 )
2020-09-28 06:13:38 +02:00
Seven Du
98e6d25b42
vweb: make ip() to return peer_ip work ( #6399 )
2020-09-17 10:38:39 +03:00
Sandro Martini
07b5d6b1b6
vweb: add mime type for json static content ( #6347 )
2020-09-11 23:14:44 +03:00
Sandro Martini
39da5eca89
vweb: hide debug prints
2020-08-31 19:39:46 +02:00
florin
b1a8e1e5b2
vweb: escape form key, not only value. ( #6269 )
2020-08-30 19:09:12 +02:00
spaceface777
eff319f869
comp_for: allow checking full mehod and arg types ( #5997 )
2020-08-27 15:00:44 +02:00
Delyan Angelov
2ad2b4c5ba
vweb: add more tests. Fix missing Content-Length: header bug on 404.
2020-08-14 02:49:15 +03:00
Delyan Angelov
a62307f711
vweb: fix body appending (missing closing json bracket)
2020-08-13 21:07:31 +03:00
spaceface777
2353814821
vweb: fix body size calculation ( #6122 )
2020-08-13 20:55:33 +03:00
Delyan Angelov
36eae1c175
builtin: x.vstring() instead of string(x) ( #6102 )
2020-08-10 18:05:26 +02:00
Sandro Martini
c7fae4dd6f
vweb: add set_status() ( #6087 )
2020-08-09 18:05:06 +02:00
Louis Schmieder
1fd499ed4a
vweb: fix request checking ( #6027 )
2020-07-31 01:26:56 +02:00
joe-conigliaro
395e886b2e
http/vweb: use Method enum & add helpers
2020-07-28 14:13:19 +10:00
Louis Schmieder
b58b15993c
gen: compile time for (methods and fields) ( #5957 )
2020-07-25 00:02:44 +02:00
Louis Schmieder
b537d8e23e
parser: comp for
attrs array ( #5903 )
2020-07-23 17:19:37 +02:00
Louis Schmieder
bb60fe2ccf
vweb: implement cookie expiration date ( #5873 )
2020-07-19 21:42:50 +02:00
Alexander Medvednikov
69ef43ba00
vweb: fix ip()
2020-07-16 21:23:35 +02:00
Alexander Medvednikov
6245876806
vweb: ip()
2020-07-16 00:48:14 +02:00
Delyan Angelov
ca9790a71f
vweb: ensure the tcp connection is always closed at the end of the response
2020-07-10 10:49:39 +03:00
Louis Schmieder
3792e17885
vweb: fix routing for 0 params ( #5773 )
2020-07-09 17:16:02 +02:00
Louis Schmieder
373aa3dbc8
vweb: router: fix trailing / ( #5760 )
2020-07-08 22:15:37 +02:00
Alexander Medvednikov
03b76d19f1
repl: make the info message a bit smaller
2020-07-08 17:22:38 +02:00
Louis Schmieder
7ad03e9d6a
vweb: simplify router ( #5751 )
2020-07-08 15:22:03 +02:00
Alexander Medvednikov
246e7e8464
vweb: form error
2020-07-07 21:35:59 +02:00
Louis Schmieder
d2d4ea42ce
vweb: add url query ( #5719 )
2020-07-07 13:46:57 +02:00
Alexander Medvednikov
a6450e8e98
vweb: fix and simplify routing
2020-07-07 12:35:45 +02:00
Louis Schmieder
3cd9e2cab7
vweb: fix index ( #5682 )
2020-07-05 22:05:58 +02:00
Alexander Medvednikov
36183660e6
remove oldgg, gl, glfw, freetype from vlib now that we have the new sokol based gg
2020-07-05 16:44:28 +02:00
Alexander Medvednikov
244d61f8d0
vweb: fix a route matching bug
2020-07-03 22:00:17 +02:00
Alexander Medvednikov
2281163efd
vweb: fix a routing bug
2020-07-03 17:50:48 +02:00
Tom Leen
51410fdb6d
vweb: add .txt and .md mime types ( #5641 )
2020-07-03 17:17:25 +02:00
Alexander Medvednikov
b7175b54eb
vweb: ['/:arg1/:arg2/action'] attribute
2020-07-03 15:10:39 +02:00
Alexander Medvednikov
34ddc9240e
tutorials: web blog fixes
2020-06-30 21:04:00 +02:00
Louis Schmieder
616b07204d
vweb: add cookies with expire date
2020-06-29 21:14:36 +02:00
Alexander Medvednikov
3f59f23427
vweb: fix a leak
2020-06-28 19:55:53 +02:00
Alexander Medvednikov
0138f46797
vweb: fix a leak
2020-06-28 13:56:38 +02:00
Alexander Medvednikov
e666209fe2
vweb: set_content_type()
2020-06-27 23:22:41 +02:00
Alexander Medvednikov
02b846aa72
vweb: fix json() and text() results
2020-06-27 13:56:15 +02:00
Alexander Medvednikov
bb5793d485
vweb: more xss fixes
2020-06-24 22:38:25 +02:00
Alexander Medvednikov
83b300435a
vweb: escape html; table: rename parent_typ to parent_type
2020-06-24 22:12:33 +02:00
Alexander Medvednikov
11ad18cd28
vweb: page gen time
2020-06-23 21:02:20 +02:00
Alexander Medvednikov
74af88bc92
Revert "fmt: re-format parser.v and cgen.v"
...
This reverts commit 6b2808a3f9
.
2020-06-23 18:16:24 +02:00
Alexander Medvednikov
6b2808a3f9
fmt: re-format parser.v and cgen.v
2020-06-23 18:05:53 +02:00
Alexander Medvednikov
a4b159a80f
orm: order by id by default
2020-06-22 17:13:57 +02:00
Alexander Medvednikov
1d8d19c977
vweb: return $vweb.html()
2020-06-20 03:12:38 +02:00
JalonSolov
bbd6d0b4e5
vweb: ignore url params on static files
2020-06-20 01:39:55 +02:00
Alexander Medvednikov
b904d7d1ba
vweb: debug prints behind $if debug
2020-06-10 11:50:06 +02:00
Alexander Medvednikov
2ed4457c5f
vweb: init_once()
2020-06-10 11:24:36 +02:00
Delyan Angelov
013bfc7ebc
vweb: add vweb.run_app(app,port); fix compilation of vweb_assets/main.v
2020-06-07 11:02:35 +03:00
Alexander Medvednikov
7815c5b108
cgen: $action (ComptimeCall); vweb: hello world works!
2020-06-06 10:05:26 +02:00
Alexander Medvednikov
11908410f3
vweb: make compile
2020-06-05 21:04:18 +02:00
Alexander Medvednikov
e3917d98c2
generics: another mut arg test
2020-06-05 20:57:05 +02:00
Alexander Medvednikov
3d83934caf
checker: check mutating methods; generics fixes
2020-06-01 15:44:10 +02:00
Alexander Medvednikov
81b44dc2c9
generics: generic call inside generic call; checker: check mut args at call
2020-05-29 04:30:00 +02:00
Alexander Medvednikov
59711d9c55
generics: test T{}
2020-05-27 06:53:52 +02:00
Alexander Medvednikov
fc67046bac
checker: fix pub fn check
2020-05-27 03:38:21 +02:00
Alexander Medvednikov
7c9279c447
vfmt: make work with comptime
2020-05-27 03:33:40 +02:00
yuyi
dda875a9c8
all: unify const names to snake_case
2020-05-22 17:36:09 +02:00
iRedMail
4a70d2fe51
examples: fix 2 unused var warnings
2020-05-17 14:15:04 +02:00
yuyi
7f4cf08516
parser: check (mut f Foo)
syntax
2020-05-17 13:51:18 +02:00
yuyi
9f4d498ff1
all: updateimport ()
and []array
2020-04-26 13:49:31 +02:00
yuyi
541b058e90
all: use a !in b
instead of !(a in b)
2020-04-26 06:39:23 +02:00
yuyi
9c5de77f12
os: ext => file_ext
2020-03-26 14:18:08 +01:00
Ian M. Jones
93920a4bb0
vweb: set request data with body text to allow use in actions
2020-03-16 14:30:55 +01:00
Ian M. Jones
c731615dbb
vweb: cater for trailing slashes being used in handle_static call
2020-03-08 15:41:59 +01:00
yuyi
783dee1f48
os: merge with filepath
2020-03-07 22:26:26 +01:00
Ian M. Jones
750f37fde7
vweb: fix serving static files
2020-03-07 14:16:03 +01:00
spaceface777
ef8c1203b4
cleanup: replace C for loops with range
2020-02-24 17:55:16 +01:00
joe-conigliaro
7f709c3285
update copyright years
2020-02-03 05:00:36 +01:00
Abdullah Atta
63b70ddb06
move http module to net.http
2019-12-30 05:42:23 +01:00
Charles WANG
b1013697d1
vlib/vweb.v: add public const and functions
2019-12-23 13:24:53 +03:00
Alexander Medvednikov
61bfecfa09
vweb: minor fixes
2019-12-21 05:19:26 +03:00
Alexander Medvednikov
45695543ba
tutorial: minor fixes
2019-12-14 18:59:02 +03:00
Alexander Medvednikov
797d4364e7
vweb: fix reading request's body/headers
2019-12-13 23:46:11 +03:00
Alexander Medvednikov
fb3da327d6
vweb: fix a cookie bug
2019-12-13 21:11:40 +03:00
taojy123
28f76f10db
vweb: fix empty post request blocking
2019-12-11 19:20:46 +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
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
Alexander Medvednikov
6f49d4c1d2
orm: bool support; vweb fixes
2019-12-09 23:20:29 +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
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
329485d4b6
vweb: fix headers and cookies
2019-12-07 15:04:05 +03:00
Alexander Medvednikov
c8d111924d
check unused and unmodified vars in all modules, not just main
2019-12-06 18:43:56 +03:00
Alexander Medvednikov
a3b14e00a2
vweb fixes
2019-11-26 16:08:16 +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
joe-conigliaro
8fbfceed30
compiler: generics - support across modules/files
2019-11-22 08:22:11 +03:00
joe-conigliaro
59378dce46
compiler/vlib: replace substr/left/right with [start..end]
everywhere
2019-10-27 10:03:15 +03:00
Alexander Medvednikov
892d1c6aab
vweb: first step to revive it
2019-10-24 22:46:58 +03:00
Simon Ernst
270934441c
os: make ls() return an optional
2019-10-17 14:30:05 +03:00
joe-conigliaro
23c84516e2
compiler: error on unused imports
2019-09-23 13:42:20 +03:00
Carlos Esquerdo Bernat
8a77d4482c
vweb: fix headers
2019-09-05 15:46:24 +03:00
kawa-yoiko
4f0f99e663
parser: fix mutability with chained fields
2019-08-30 20:19:06 +03:00
Carlos Esquerdo Bernat
cf23c289ec
tests: cleanup
2019-08-20 11:18:12 +03:00
unknown-v
49205dcce3
examples: fix maps warnings
2019-08-17 02:55:11 +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
Alexander Medvednikov
a11961b0d3
vweb: make mime_types a const
2019-08-13 01:04:26 +03:00
Alexander Medvednikov
ef2ab31e88
sql: only accept strings and ints for now
2019-08-12 21:07:03 +03:00
Carlos Esquerdo Bernat
d526cfc205
vweb: fix V panic: array index out of range: 1/0
2019-08-11 14:07:22 +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
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
Alexander Medvednikov
ed3f1d315b
vweb: remove favicon hack
2019-08-02 10:15:20 +00: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
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
a7e464fee9
user modules + v install
from vpm
2019-08-01 17:28:25 +02:00