Commit Graph

1275 Commits

Author SHA1 Message Date
Ayaz Hafiz
43e734f75c
Make implementation easier to read 2022-09-27 18:03:19 -05:00
Brendan Hansknecht
30dbad88ae
ensure that the csv platform flushes to stdout successfully 2022-09-27 16:01:15 -07:00
Ayaz Hafiz
a8b1cb2d90
Implement decoding lists from env vars 2022-09-27 17:57:46 -05:00
Ayaz Hafiz
57231de0c1
Add example of decoding environment variables 2022-09-27 17:57:46 -05:00
Ayaz Hafiz
b9f34df96d
Add comment about annotations 2022-09-27 17:57:46 -05:00
Ayaz Hafiz
38ab8de37c
Implement Env.decode for the CLI platform 2022-09-27 17:57:45 -05:00
Brian Carroll
173a4ec8ab
Define roc_memmove in case LLVM decides to use memmove 2022-09-27 21:24:23 +01:00
Anton-4
d5dbee57d9
cli_run no macro re-write 2022-09-27 20:25:28 +02:00
Brian Carroll
dbf63af05b
Use a different stdio function to get C host working on CI 2022-09-26 21:34:35 +01:00
Brian Carroll
1a5ef05585
Print out stderr if CLI test fails 2022-09-26 19:21:44 +01:00
Brian Carroll
bad993a957
Cleanups and formatting 2022-09-25 22:47:09 +01:00
Brian Carroll
32c2d8fb4b
fix spellcheck error 2022-09-25 22:19:41 +01:00
Brian Carroll
cbd8968066
Create CLI test for CSV example 2022-09-25 22:17:29 +01:00
Brian Carroll
a83ef5fa2a
rename codepoint -> codeunit 2022-09-25 22:17:29 +01:00
Brian Carroll
2341c01ab3
rename main file and executable in CSV example 2022-09-25 22:17:28 +01:00
Brian Carroll
a3c1325edf
rename CSV parsing example: csv -> parser 2022-09-25 22:17:12 +01:00
Brian Carroll
005b29885b
Merge branch 'main' of github.com:rtfeldman/roc into csv_decoding-server_example 2022-09-25 21:35:19 +01:00
Anton-4
1d9a751606
cli_run test fixes 2022-09-24 20:14:59 +02:00
Anton-4
076190a217
Merge branch 'main' of github.com:roc-lang/roc into simplify_examples 2022-09-24 16:55:37 +02:00
Anton-4
0ddc69e066
Merge branch 'main' of github.com:roc-lang/roc into simplify_examples 2022-09-24 16:49:50 +02:00
Anton-4
ef9c77409f
Merge remote-tracking branch 'upstream/main' into swiftuidemo 2022-09-23 12:04:34 +02:00
Ayaz Hafiz
f2c9fd2b48
Rename Bytes' encoder/decoder to avoid stdlib collision 2022-09-21 12:29:07 -05:00
Ayaz
211c297230
Merge pull request #4041 from KilianVounckx/opaque-bool
Opaque bool
2022-09-21 11:15:41 -05:00
Richard Feldman
02238b8815
Add setCwd and exePath, change fx to [Read [Env]] 2022-09-21 12:05:32 -04:00
Anton-4
04ea17e8a1
Merge branch 'main' into swiftuidemo
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-09-21 17:24:25 +02:00
Folkert de Vries
cc202a4cf9
Merge pull request #4082 from roc-lang/update-cli-platform-unreachables
Support unification with uninhabited tag variants in more places
2022-09-21 12:18:38 +02:00
Folkert de Vries
a74f5d9366
Merge pull request #4076 from roc-lang/collapse-void-2
Unwrap layouts containing void layouts as newtypes
2022-09-21 00:13:56 +02:00
Ayaz Hafiz
140c33aa50
Update Args.roc 2022-09-20 14:42:09 -05:00
Ayaz Hafiz
2c2a1eb869
Fix cli run tests 2022-09-20 14:42:08 -05:00
kilianv
610c529ba8
Update roc files to use new opaque bools 2022-09-20 14:42:04 -05:00
Ayaz Hafiz
0cb48c6404
Simplify CLI platform arms further 2022-09-20 14:30:25 -05:00
Ayaz Hafiz
49ba8b92b4
Remove unreachable branches in Program.roc 2022-09-20 14:14:31 -05:00
Ayaz Hafiz
884843205d
Update zig host for zero-size types 2022-09-20 08:32:20 -05:00
Richard Feldman
7df7e1bbb7
Drop obsolete declaration 2022-09-19 21:13:22 -04:00
Richard Feldman
b6157e76b8
Fix type mismatch in exit code 2022-09-19 21:12:48 -04:00
Richard Feldman
3c12f79771
roc format 2022-09-19 20:07:23 -04:00
Richard Feldman
aa6d29fbb1
Update CLI examples and tests to use Program 2022-09-19 20:06:29 -04:00
Richard Feldman
0e472200f0
Add ExitCode type 2022-09-19 15:23:07 -04:00
Richard Feldman
45df950cf6
Add Env.var 2022-09-19 13:02:31 -04:00
Richard Feldman
ed31b1cb74
Implement Env.dict, move args to Effect 2022-09-19 12:44:26 -04:00
Richard Feldman
ffa2e657e8
Revise file.roc example 2022-09-19 12:30:14 -04:00
Richard Feldman
96f8818b24
Fix type mismatches in file.roc example 2022-09-19 10:27:44 -04:00
Richard Feldman
f0a9bb0a96
Reorganize Program to use effects for getting args 2022-09-19 09:13:11 -04:00
Richard Feldman
3d68293da1
Expand Env docs 2022-09-19 09:13:11 -04:00
Richard Feldman
9232d8271f
Add Program to CLI platform 2022-09-19 09:13:10 -04:00
Ayaz Hafiz
c9e73b6761
Change example to be a calculator 2022-09-14 12:06:35 -05:00
Ayaz Hafiz
faeb3358eb
Add an I64 parser 2022-09-14 11:46:25 -05:00
Ayaz Hafiz
a91a9b7e79
Use empty strings to represent missing values 2022-09-14 11:41:48 -05:00
Ayaz Hafiz
e7b216fa30
Fix docs link 2022-09-14 11:26:53 -05:00
Ayaz Hafiz
93f0a0eeb9
Add documentation 2022-09-14 11:26:53 -05:00
Ayaz Hafiz
ed78848737
Reset file/err.roc 2022-09-14 11:26:53 -05:00
Ayaz Hafiz
d460fc76d3
Lift commands 2022-09-14 11:26:53 -05:00
Ayaz Hafiz
e39fccb0fa
Add cli run test 2022-09-14 11:26:52 -05:00
Ayaz Hafiz
89e70fea4b
Format 2022-09-14 11:26:52 -05:00
Ayaz Hafiz
1bbe56248c
Simplify subparser mapping 2022-09-14 11:26:52 -05:00
Ayaz Hafiz
d9a94a36c5
Flip subCommand order 2022-09-14 11:26:52 -05:00
Ayaz Hafiz
24885e99bc
Format 2022-09-14 11:26:52 -05:00
Ayaz Hafiz
664bcdff33
Improve error message 2022-09-14 11:26:52 -05:00
Ayaz Hafiz
40f5cad578
Add help to named program 2022-09-14 11:26:52 -05:00
Ayaz Hafiz
4b7c11cb2d
Format command help with headings 2022-09-14 11:26:51 -05:00
Ayaz Hafiz
d448083e7a
Use named parser in example 2022-09-14 11:26:51 -05:00
Ayaz Hafiz
812081eefe
named function to create NamedParser 2022-09-14 11:26:51 -05:00
Ayaz Hafiz
990c912abd
Chain named 2022-09-14 11:26:51 -05:00
Ayaz Hafiz
4999e391ee
Flip name order 2022-09-14 11:26:51 -05:00
Ayaz Hafiz
5ea56beae1
Name parsers 2022-09-14 11:26:51 -05:00
Ayaz Hafiz
bf204dcce8
Have parse take program name 2022-09-14 11:26:51 -05:00
Ayaz Hafiz
487ecee143
Expand arg cli example 2022-09-14 11:26:51 -05:00
Ayaz Hafiz
0672a591b6
Expose subCommand, choice 2022-09-14 11:26:50 -05:00
Ayaz Hafiz
7d2249364f
Rename apply to withParser 2022-09-14 11:26:50 -05:00
Ayaz Hafiz
dd88af75c9
Error handling for subcommands 2022-09-14 11:26:50 -05:00
Ayaz Hafiz
391c87b50b
Initial support for subcommands 2022-09-14 11:26:50 -05:00
Ayaz Hafiz
6d1a903841
Remove Default for now 2022-09-14 11:26:50 -05:00
Ayaz Hafiz
2e1d99299f
Use parseFormatted 2022-09-14 11:26:50 -05:00
Ayaz Hafiz
04fd4412fd
Expose apply 2022-09-14 11:26:50 -05:00
Ayaz Hafiz
b0ab69d41c
Format help 2022-09-14 11:26:49 -05:00
Ayaz Hafiz
9c34aac6fd
Start on parseFormatted 2022-09-14 11:26:49 -05:00
Ayaz Hafiz
e7c0cad1e7
Report missing args and types in errors 2022-09-14 11:26:49 -05:00
Ayaz Hafiz
8d2d0671d3
Improve arg example 2022-09-14 11:26:49 -05:00
Ayaz Hafiz
406d476e29
Expose apply 2022-09-14 11:26:49 -05:00
Ayaz Hafiz
f7fdb725c8
Revert "Rename Arg to ArgParse"
This reverts commit 3b3f1699a6b6d275bfd8a26137a4c5666db23a37.
2022-09-14 11:26:49 -05:00
Ayaz Hafiz
c5eb271497
Rename Arg to ArgParse 2022-09-14 11:26:49 -05:00
Ayaz Hafiz
0b53f40c02
Expose bool, str 2022-09-14 11:26:48 -05:00
Ayaz Hafiz
75b93c5563
Add types to config 2022-09-14 11:26:48 -05:00
Ayaz Hafiz
b453bc9d31
Format 2022-09-14 11:26:48 -05:00
Ayaz Hafiz
ff725be187
Admit optional record fields when constructing parsers 2022-09-14 11:26:48 -05:00
Ayaz Hafiz
490bb51d71
Rename bool and str 2022-09-14 11:26:48 -05:00
Ayaz Hafiz
ea6bdb7fc3
roc format 2022-09-14 11:26:48 -05:00
Ayaz Hafiz
ccb579dda8
Implement toHelp 2022-09-14 11:26:48 -05:00
Ayaz Hafiz
0b7d9e58ae
Revert "Remove WithConfig for now"
This reverts commit 38dd0aa449b9dcc572462788860535894f71deee.
2022-09-14 11:26:47 -05:00
Ayaz Hafiz
7e89c8777b
Simplify 2022-09-14 11:26:47 -05:00
Ayaz Hafiz
e738d5e04e
Name tests 2022-09-14 11:26:47 -05:00
Ayaz Hafiz
42bded0aae
Refactor to use OptionStr 2022-09-14 11:26:47 -05:00
Ayaz Hafiz
6979338617
Remove WithConfig for now 2022-09-14 11:26:47 -05:00
Ayaz Hafiz
9c3c64c252
Move parser to Arg.roc 2022-09-14 11:26:47 -05:00
Ayaz Hafiz
a46713dd87
Clear out env and file examples 2022-09-14 11:26:47 -05:00
Ayaz Hafiz
6a19e3d7d5
Clear out cli platform changes 2022-09-14 11:26:46 -05:00
Ayaz Hafiz
2cd7535320
Add some more expects to the arg parser 2022-09-14 11:26:46 -05:00
Richard Feldman
4046d883c9
Get basic andMap example working 2022-09-14 11:26:46 -05:00
Richard Feldman
a023d26590
Basic arg parser example 2022-09-14 11:26:46 -05:00
Richard Feldman
dd080030ee
Move test into main for easier repro 2022-09-14 11:26:46 -05:00
Richard Feldman
2dc1df165e
Revert "Add Args.roc"
This reverts commit 92038e82fee0d8d6ecca33ad7b3e542a7a3f485b.
2022-09-14 11:26:46 -05:00
Richard Feldman
6f368a219d
Add Args.roc 2022-09-14 11:26:46 -05:00
Richard Feldman
e37a8f3089
Remove optional fields to fix panics 2022-09-14 11:26:45 -05:00
Richard Feldman
0313bdec08
Fix decision_tree panic 2022-09-14 11:26:45 -05:00
Richard Feldman
ef7718958b
Repro decision_tree panic 2022-09-14 11:26:45 -05:00
Richard Feldman
fc933d2991
Reproduce compiler stack overflow 2022-09-14 11:26:45 -05:00
Richard Feldman
b50101011f
More arg parsing improvements 2022-09-14 11:26:45 -05:00
Richard Feldman
27e8b156c2
Fix type mismatch 2022-09-14 11:26:45 -05:00
Richard Feldman
80467e23d6
Reproduce type mismatch with 2 identical errors 2022-09-14 11:26:45 -05:00
Richard Feldman
5070593197
Got parser compiling except for unsafe patterns 2022-09-14 11:26:45 -05:00
Richard Feldman
398f1fcf3f
Remove most of Path implementation for now. 2022-09-14 11:26:44 -05:00
Richard Feldman
fac076c239
Remove httpGetUtf8 effect in favor of sendRequest 2022-09-14 11:26:44 -05:00
Richard Feldman
3228c89815
Don't depend on ureq twice 2022-09-14 11:26:44 -05:00
Richard Feldman
963acb0ff5
Add effects for file I/O 2022-09-14 11:26:44 -05:00
Richard Feldman
f3dfab8a94
Fix incorrect merge resolution of Http module 2022-09-14 11:26:44 -05:00
Richard Feldman
7d1376b273
Add Env to cli example 2022-09-14 11:26:43 -05:00
Richard Feldman
ddbfd48ca3
Merge branch 'main' into pass-args-to-cli 2022-09-12 23:53:55 -04:00
Richard Feldman
3f467459f9
roc format 2022-09-12 20:39:06 -04:00
Richard Feldman
33ca6147c9
Fix CLI platform docs 2022-09-12 20:39:05 -04:00
Richard Feldman
21b74f6dbb
Add Dir and Env to CLI platform 2022-09-12 20:19:12 -04:00
Richard Feldman
4ccd726141
Fix File.readBytes 2022-09-12 20:18:52 -04:00
Richard Feldman
81d11e4edd
Add File.delete to CLI platform 2022-09-12 20:18:51 -04:00
Richard Feldman
d5cc75907f
Update file I/O example 2022-09-12 20:18:50 -04:00
Ayaz
6caf945c6a
Merge pull request #4020 from roc-lang/JanCVanB-patch-1
Fix file example app executable name
2022-09-12 12:44:40 -04:00
Ayaz Hafiz
c85562f3e8
Format 2022-09-12 12:25:37 -04:00
Ayaz Hafiz
42fdae4a57
Pass args by pointer 2022-09-12 12:25:37 -04:00
Ayaz Hafiz
203b21f7d1
Use OS args rather than string args 2022-09-12 12:25:36 -04:00
Ayaz Hafiz
ed9271829c
Cargo fmt 2022-09-12 12:25:04 -04:00
Ayaz Hafiz
98b6fe0f7f
Add command-line arguments for platform example 2022-09-12 12:25:03 -04:00
Ayaz Hafiz
ec628ed5c6
Pass cli arguments to main required by cli platform 2022-09-12 12:23:28 -04:00
Brian Carroll
6e64bfc513
Merge pull request #3961 from roc-lang/markdown
Static site with Markdown
2022-09-12 13:45:28 +01:00
Brian Carroll
c1709ea0d2
static-site-gen: print message before writing file 2022-09-12 08:31:46 +01:00
Jan Van Bruggen
4fa52e6dee
Fix file example app executable name
Signed-off-by: Jan Van Bruggen <JanCVanB@users.noreply.github.com>
2022-09-12 01:12:12 -06:00
Jan Van Bruggen
e84b43ddb6
Categorize FALSE interpreter as a CLI 2022-09-11 22:32:15 -06:00
Jan Van Bruggen
a9a65fcf4b
Recategorize interactive apps as CLIs 2022-09-11 22:32:15 -06:00
Jan Van Bruggen
d0f5599bd7
Categorize breakout game as a GUI 2022-09-11 22:32:15 -06:00
Jan Van Bruggen
527f39b8f2
Move Roc CLI testing examples to crates/ 2022-09-11 22:32:15 -06:00
Jan Van Bruggen
2eec200f09
Move helloWorld example up onto cli-platform 2022-09-11 22:22:50 -06:00
Richard Feldman
24dcc91799
Work around formatter bug (namely #4013) 2022-09-11 20:26:49 -04:00
Richard Feldman
d13d79d455
roc format 2022-09-11 19:28:36 -04:00
Richard Feldman
079311d080
Flesh out basic file I/O examples 2022-09-11 16:56:04 -04:00
Richard Feldman
224475a87d
Simplify File error types 2022-09-11 16:56:04 -04:00
Richard Feldman
d7235d376f
Improve documentation in File.roc 2022-09-11 16:56:04 -04:00
Folkert
a0fe1ec453
use repr(u8) instead of repr(C) for an enum 2022-09-11 16:56:03 -04:00
Richard Feldman
42ae4282ba
give some more specific errors in CLI example 2022-09-11 16:56:03 -04:00
Richard Feldman
7adc9c972b
Reanme path_from_list to path_from_roc_path 2022-09-11 16:56:03 -04:00
Richard Feldman
13ae5c068b
Extract write_slice 2022-09-11 16:56:03 -04:00
Richard Feldman
ca730c5b52
Basic implementations of file I/O in the host 2022-09-11 16:56:02 -04:00
Richard Feldman
92b897fc13
Add File I/O CLI example 2022-09-11 16:56:02 -04:00
Richard Feldman
f39e7e6737
Add File to CLI platform 2022-09-11 16:56:02 -04:00