Commit Graph

191 Commits

Author SHA1 Message Date
Noah
1385c06e25 Fix some minor things required for unittest 2020-08-12 16:03:20 -05:00
Jeong YunWon
e253095f75 new_str allows &str and &String 2020-08-10 02:16:50 +09:00
Jeong YunWon
7b6ab8da72 Replace vm.new_{int,str,bool} with vm.new_pyobj 2020-08-10 02:16:29 +09:00
Jeong YunWon
a846338395 BorrowValue for PyTuple 2020-08-09 14:55:09 +09:00
Jeong YunWon
ab37e455f3 BorrowValue for PyString 2020-08-09 14:14:55 +09:00
Jeong YunWon
7a8045fea1 BorrowValue for PyInt and PyList 2020-08-09 13:44:31 +09:00
Noah
dd8e9a6508 Use pylib as a dependency of the rustpython binary in order to get a Lib path 2020-08-03 13:20:06 -05:00
Noah
4bd1153b24 Add/fix a bunch of sysmodule attributes 2020-08-02 20:59:36 -05:00
Noah
ba8c0d9a82 Use sys.excepthook when exceptions bubble to the top level 2020-08-02 12:23:12 -05:00
HyeockJinKim
cdd98135ee EOF after \\ raise EOF Error
Return EOF Error to get the next line after` \\ `in the shell.

Closes #1928
2020-05-16 09:45:44 +09:00
Windel Bouwman
3814b5cb22 Merge pull request #1908 from RustPython/coolreader18/doctests
Allow doctest to be imported and run
2020-05-07 23:19:24 +02:00
Noah
a34951dc1b Fix clippy and unittest error 2020-05-06 21:33:25 -05:00
Noah
0fef85ad61 Implement sys.displayhook 2020-05-05 12:22:19 -05:00
Noah
5f6c7152b3 Have a default sys.path value pointing to <checkout>/Lib 2020-05-05 10:57:35 -05:00
Noah
126f41e003 Make rustpython -i script.py work like it does in CPython 2020-03-27 15:24:08 -05:00
Noah
5849e0d5bc Fix sys.argv in interactive mode 2020-03-08 22:47:56 -05:00
Noah
645314b215 Move readline.rs into the vm crate 2020-02-29 12:02:36 -06:00
Jeong YunWon
7d0d313aa5 &str::to_string -> &str::to_owned for variables 2020-02-05 22:55:34 +09:00
Jeong YunWon
1bac582921 &str::to_string -> &str::to_owned for literals 2020-02-05 22:55:33 +09:00
Arnav Borborah
c44f04b57e Fallback exit code to 0 in case of overflow 2020-02-04 18:21:33 -05:00
coolreader18
ddf5c9aade Compile for redox 2020-01-14 19:07:05 -06:00
Jeong YunWon
9f4f8ad0ec PyTuple::elements into private 2020-01-06 02:34:56 +09:00
coolreader18
777542f7ec Directly instantiate exceptions in the vm.new_*_error functions 2019-12-28 01:31:24 -06:00
Noah
97c8d11092 Make PyResult<T> = Result<T, PyBaseExceptionRef> 2019-12-27 11:22:52 -06:00
Noah
cd726a2818 Cleanup exceptions a bit 2019-12-27 11:17:26 -06:00
yanganto
4c3642d19c Use enum for initialize parameters 2019-12-11 10:58:59 +08:00
yanganto
edf70924a9 Set initial parameter in PySettings
- Initialize VM after VM created
	- Some(true):
		VM will be created and initialized with the importers, which require external
		filesystem access
	- Some(false):
		VM will be created and initialized with the importers wihout external filesystem access
	- None:
		VM will be created but not initialized, so it is ready to be injected with modules.
		After injection, the `initialize_as_external` or `initialize_without_external`
		should be called, such that the VM will be ready to use.

- Prevent double initialize VM by `initialized` flag
2019-12-05 10:14:40 +08:00
yanganto
4003013026 Initalize VM in VirtualMachine::default()
- new and initalize as external in VirtualMachine::default()
- Implement VirtualMachine::without_external
- new, setup stdlib_inits, Initialize vm for wasm
2019-12-05 10:13:41 +08:00
yanganto
8a14abc445 Initialize hardcore modules and importlib
Initialize hardcore modules and importlib after vm created and
stdlib_inits setup
2019-12-05 10:13:41 +08:00
coolreader18
a07e0a14bd Use a BufWriter for dumping profile output 2019-12-03 23:09:07 -06:00
coolreader18
1edf7c85aa Cleanup some stuff related to the repl 2019-10-14 20:20:13 +00:00
coolreader18
e7a6b79023 Allow indenting by pressing tab 2019-10-08 21:32:02 -05:00
coolreader18
2220ed7e81 Abstract over the readline implementation 2019-10-08 21:32:02 -05:00
coolreader18
04a5aecc3d Move ShellHelper into another module 2019-10-08 18:28:26 -05:00
Noah
de7002a3e7 Don't show builtins when tabbing on an empty line 2019-10-08 17:51:16 -05:00
Noah
fc3e8c2483 Add tab autocompletion to the REPL 2019-10-08 17:50:38 -05:00
Syrus
32123b56d4 Improved PR based on feedback 2019-10-08 00:54:41 -07:00
Syrus
7495fc68ae Added support for WASI 2019-10-07 12:30:48 -07:00
Noah
e89d00f167 Correctly handle a SystemExit unwound to the top level of execution 2019-10-04 22:05:01 -05:00
coolreader18
5dd5b44b59 Use the rustyline prompt on redox 2019-09-10 18:01:21 -05:00
Noah
5ae1fca0ec Improve UX on windows
Use the `dirs` crate to find the config dir on non-unix; fix warnings
2019-09-04 11:15:41 -05:00
Aviv Palivoda
3d61129cfd Delay from_list tuple create in import 2019-08-31 11:31:59 +03:00
coolreader18
0df3ed5260 Fix redox print_prompt 2019-08-26 21:23:35 -05:00
Noah
5da00de769 Make print_prompt() a fn 2019-08-26 13:24:23 -05:00
coolreader18
13d7d636b6 Process prompt correctly on redox 2019-08-25 23:27:47 -05:00
coolreader18
6faf2637b4 Move NSIG, reorganize prompt stuff 2019-08-25 12:50:05 -05:00
coolreader18
0d492e7875 Raise a KeyboardInterrupt on a SIGINT 2019-08-23 16:57:39 -05:00
Windel Bouwman
b6f522d917 Allow &str to be used a dictionary key. 2019-08-17 17:11:23 +02:00
Windel Bouwman
2b02371ba1 Merge pull request #1258 from RustPython/coolreader18/site
Add site module and run it on startup
2019-08-16 08:39:51 +02:00
coolreader18
d33d5ce5f6 Initialize attributes on new modules 2019-08-15 23:06:30 -05:00