Commit Graph

3451 Commits

Author SHA1 Message Date
Noah
1459ed6ae9 Correct comment 2020-03-01 14:41:51 -06:00
Noah
300ac9cb42 Add sys.hash_info 2020-03-01 14:34:49 -06:00
Noah
1941c8932f Add IOError alias 2020-02-29 19:35:16 -06:00
Noah
6e776da75d Implement builtin_input 2020-02-29 12:02:36 -06:00
Noah
d3343b6de4 Add vm.new_runtime_error 2020-02-29 12:02:36 -06:00
Noah
645314b215 Move readline.rs into the vm crate 2020-02-29 12:02:36 -06:00
Noah
6b580c5921 Get regrtests working on Windows 2020-02-29 10:34:12 -06:00
Noah
db65c8d512 create_stdio in vm initialization 2020-02-29 10:34:12 -06:00
Noah
a70294de3b Map 0,1,2 to io::{stdin,stdout,stderr}'s Windows handle 2020-02-29 10:33:21 -06:00
Idan Dor
6ea5d58f24 Fix previous merge of objtype.rs.
Moved the tests to their more correct place of `tests/snippets/class.py`.
2020-02-29 16:34:14 +02:00
Idan Dor
23e0467876 Merge remote-tracking branch 'remotes/upstream/master' into feature/mro_resolution
# Conflicts:
#	vm/src/obj/objsuper.rs
#	vm/src/obj/objtype.rs
2020-02-29 13:17:33 +02:00
Aviv Palivoda
e07ca66db4 Merge pull request #1772 from palaviv/set-fixes
Set fixes
2020-02-29 12:53:16 +02:00
Aviv Palivoda
69ba6cf887 Rename hash_iter_no_order to hash_iter_unordered 2020-02-29 09:40:16 +02:00
Noah
7be93a96da Merge pull request #1766 from RustPython/coolreader18/stdlib-typing
Add the typing standard library module, rework tp_new
2020-02-28 22:50:07 -06:00
Noah
f604a660fd Check RUST_BACKTRACE for vm.{unwrap,expect}_pyresult() 2020-02-28 21:31:56 -06:00
philippeitis
a6cc502fb9 Formatting. 2020-02-28 12:08:08 -08:00
philippeitis
294cbf1c7a Raise TypeError when kwargs are not dict. 2020-02-28 11:54:35 -08:00
Noah
f2dc9f906e Merge pull request #1774 from RustPython/coolreader18/_os-module-posix-nt
Change the name of the _os module to posix/nt
2020-02-28 07:06:05 -06:00
Jeong YunWon
341ba1e2f8 Reorder exceptions by exception_hierarachy.txt 2020-02-26 08:38:52 +00:00
Jeong YunWon
7bb530dd89 Fix exception repr 2020-02-26 08:15:29 +00:00
Jeong YunWon
378a36c7e1 Add missing exceptions 2020-02-26 08:15:21 +00:00
Noah
fa7524d0b9 Change the name of the _os module to posix/nt 2020-02-24 22:11:08 +00:00
Idan Dor
cb24114444 Fixed clippy suggestion. 2020-02-22 16:43:00 +02:00
Idan Dor
8b80707cf8 Fixes according to PR review and added tests:
Moved mro creation from super getattribute to super constructor.

Removed optional VM argument in new class construction and changed the function to return String which is later "unwrapped" if a vm is available.

Added the relevant tests to `types_snippet.py`.
2020-02-22 16:10:49 +02:00
Aviv Palivoda
3db197c4b1 Fix set intersection_update 2020-02-22 12:59:48 +02:00
Aviv Palivoda
84250294b0 Fix frozenset hash 2020-02-22 12:36:27 +02:00
Aviv Palivoda
be9d8a4a56 Fix symmetric_difference 2020-02-22 11:22:01 +02:00
Aviv Palivoda
f21e35c31a Merge pull request #1771 from palaviv/set-tests
Add CPython Set tests and support Args in methods
2020-02-22 10:01:02 +02:00
Noah
82d683730c Misc changes 2020-02-20 23:53:19 -06:00
Noah
7f6cdc68c4 Add struct.Struct.size property 2020-02-20 23:08:37 -06:00
Noah
0dcb4d4b2e Reorganize struct module, add struct.Struct 2020-02-20 22:33:25 -06:00
Jeong YunWon
9bbdbb6b3b Remove test warnings 2020-02-18 08:14:48 +00:00
Noah
c8c32006a5 Fix clippy lints 2020-02-16 17:51:37 -06:00
Noah
bad4c40904 Fix tests 2020-02-16 17:49:56 -06:00
Noah
c5e856a34d Rework super() 2020-02-16 16:28:28 -06:00
Noah
301e565f58 Rework tp_new 2020-02-16 16:05:11 -06:00
Noah
00096e62d7 Add vm.call_get_descriptor_specific() 2020-02-16 16:02:43 -06:00
Noah
0f03b794f8 Add ctx.new_staticmethod 2020-02-16 16:02:43 -06:00
Noah
e682959c9a Properly pass kwargs to metaclass in builtin_build_class 2020-02-16 16:02:43 -06:00
Noah
e27fa254fa Improve PyClassRef::iter_mro() 2020-02-16 16:02:43 -06:00
Noah
03c2042bd8 Add generic_getattribute{,_opt} 2020-02-16 16:02:26 -06:00
Aviv Palivoda
34d8c44952 Support Args in set/frozenset methods 2020-02-16 20:32:50 +02:00
Noah
dfe8d8effa Add vm.{unwrap,expect}_pyresult() 2020-02-16 04:00:49 -06:00
Noah
2b5e32aaab Make _random work on wasm 2020-02-14 10:49:53 -06:00
Idan Dor
1e985e26da Fixed issue MRO computation in RustPython doesn't seem to implement C3 correctly #1659.
To my surprise the C3 algorithm was implemented, however I have found a few problems which cause it to appear like it isn't:
- Bad mro usage in super: starting from the current class mro instead of the original class at the index of the current class. This leads to skipping classes gotten from multiple inheritance.
- A minor error in mro c3 implementation - not keeping local precedence ordering.
- The mro c3 implementation also allowed duplicate base classes. (Not from the issue but I noticed this anyway).

To allow the fix in new class creation I added an optional vm argument.
This allows the class creation to correctly throw type errors at mro errors.
Due to classes being necessary to vm creation in the first place, this argument is optional (and should only be skipped during initial type creation) and if there is an error here, it will panic instead of returning it.
2020-02-14 15:08:47 +02:00
Do Nhat Minh
0c731e8a9b Add as_integer_ratio to PyInt 2020-02-11 16:01:22 -05:00
Aviv Palivoda
37fe20234d Merge pull request #1756 from minhnhdo/master
Add __pos__ to PyComplex
2020-02-10 19:13:11 +02:00
Do Nhat Minh
914454e4ba Add __pos__ to PyComplex 2020-02-10 11:23:50 -05:00
Aviv Palivoda
176fa581b6 Merge pull request #1722 from palaviv/os-uname
Change platform to CPython pure python platform
2020-02-10 18:14:58 +02:00
Jeong YunWon
8d7be94b03 PyBool 2020-02-07 11:56:31 +09:00