Commit Graph

68 Commits

Author SHA1 Message Date
Noah
22e76f1a67 Use a boxed slice for codeobject fields 2020-12-05 16:36:37 -06:00
Noah
92b8e59158 Fast locals part 2 2020-12-05 16:36:00 -06:00
Noah
97029af713 Fast locals part 1 2020-12-05 16:36:00 -06:00
Noah
085a9d4f5e Don't use a wildcard to prevent future mistakes 2020-11-24 11:57:14 -06:00
Noah
8b0e806e39 Fix rustpython-jit to not use label_map 2020-11-23 20:10:46 -06:00
Noah
6082049cab Remove the need for a label_map in CodeObject 2020-11-23 14:41:56 -06:00
Noah
30b5fb22ef Use lz-fear to get streaming decompression for bytecode 2020-11-17 09:49:31 -06:00
Noah
2f232ecbe3 Implement string interning for variable names 2020-11-09 15:51:57 -06:00
Noah
b7a73fdc0c Capitalize boolean constants for dis 2020-10-30 14:05:53 -05:00
Noah
b8ebd445f4 Clean up remove map_basic 2020-10-19 23:55:56 -05:00
Noah
df28c022e1 Use disassembly for snapshot testing 2020-10-19 23:55:56 -05:00
Noah
a665edc421 Fix clippy lints 2020-10-19 23:55:55 -05:00
Noah
543c2a2256 Change CodeObject to be generic over the constant representation 2020-10-19 23:55:55 -05:00
Jeong YunWon
562bd6364b Merge pull request #2271 from RustPython/frozen-serde
Add derive(Serialize, Deserialize) to FrozenModule
2020-10-10 14:06:09 +09:00
Noah
656eb60aad Add derive(Serialize, Deserialize) to FrozenModule 2020-10-09 22:24:32 -05:00
Noah
93501935d0 Fix co.co_varnames to include vararg names 2020-10-07 19:28:18 -05:00
Noah
e5186004d4 Some more getattr related tweaks/optimizations 2020-09-25 19:48:09 -05:00
Jeong YunWon
9e78ec9ef9 Fix dis.dis to prints inner constant codes like CPython 2020-09-21 06:09:55 +09:00
Jeong YunWon
7f3fa70d10 clean up PyComplex 2020-08-09 21:46:16 +09:00
Noah
2bc2d1721e Update itertools 2020-07-26 15:21:39 -05:00
Noah
fcad7e0091 Use lz4-compression instead of lz4-compress 2020-07-26 15:21:39 -05:00
Noah
e30e2cd278 Update some num-* crates 2020-07-15 12:53:57 -05:00
lynskylate
a310f3c245 Add annotation setup 2020-07-08 01:06:12 +08:00
Noah
bc1717b7ac Release 0.1.2
rustpython@0.1.2
rustpython-bytecode@0.1.2
rustpython-compiler@0.1.2
rustpython-derive@0.1.2
rustpython-parser@0.1.2
rustpython-vm@0.1.2
rustpython_freeze@0.1.2
rustpython_wasm@0.1.2

Generated by cargo-workspaces
2020-06-23 18:47:08 -05:00
TheAnyKey
fd2e0aa41e Implement Py38 named expression (PEP 572) (#1934)
* Initial implementation of named expression and  import  according CPython tests

* added new instruction with inversed evaluation order for dict comprehension, in other cases use regular evaluation order

* added further aspects to implementation, cleaned up, imported test from CPython

* implemented first parts of scoping enhancement and extended checks

* completion of name resolution ongoing, now more test passing, still warinings and cleanup required

* further optimization of name resolution in nested scopes

* Initialize the vm with imports from _io instead of io

* Add the OpenBSD support that I am smart enough to

* adapted grammer to full support, most test are passing now, esp. all invalids are passed. Cleaned up in symboltable

* more conditional compiling, this time for errors

* rustfmt was not pleased

* premature push, whoops

* Add expected_failure result type to jsontests

* Initial implementation of named expression and  import  according CPython tests

* added new instruction with inversed evaluation order for dict comprehension, in other cases use regular evaluation order

* added further aspects to implementation, cleaned up, imported test from CPython

* implemented first parts of scoping enhancement and extended checks

* completion of name resolution ongoing, now more test passing, still warinings and cleanup required

* further optimization of name resolution in nested scopes

* adapted grammer to full support, most test are passing now, esp. all invalids are passed. Cleaned up in symboltable

* Fixed nameing convention violation and removed unnecessary information from symbol resolution. Added some more comments.

* Fixed nameing convention violation and removed unnecessary information from symbol resolution. Added some more comments.

Co-authored-by: Noah <33094578+coolreader18@users.noreply.github.com>
Co-authored-by: Reuben Staley <lighthousemaniac@gmail.com>
2020-06-01 11:22:15 +02:00
Noah
76f7d7e2c3 Add inspect.CO_ASYNC_GENERATOR constant 2020-05-05 12:22:19 -05:00
Kienyew
e3353aac4e Fix typo 2020-04-30 12:57:26 +08:00
Noah
f5de59a4bd Merge pull request #1834 from RustPython/coolreader18/jsontests
Add json output for CPython tests
2020-04-04 11:52:04 -05:00
Noah
f33e2d3b39 Remove incognito from vm 2020-04-03 12:34:00 -05:00
Noah
be565d30ae Make incognito a CodeFlag bit 2020-04-03 12:34:00 -05:00
Noah
80f11466b3 Add "incognito" compilation 2020-04-03 12:34:00 -05:00
Noah
6553bf72d4 Move varargs information into CodeFlags 2020-04-02 09:02:18 -05:00
Noah
eecb097ae6 Make bytecode::Location Copy 2020-03-13 21:49:10 -05:00
Jeong YunWon
aa1d20c388 positional only parameter support 2020-03-08 00:13:13 +09:00
Aviv Palivoda
c3703f08d7 Support expression in f-strings spec 2019-12-27 10:19:07 +02:00
coolreader18
bed54e035c Add some constants to native modules 2019-11-16 22:58:51 -06:00
coolreader18
6bc33fbca2 Add async for 2019-11-07 00:04:51 -06:00
coolreader18
5c26a25522 Add async with, reorganize how with blocks work 2019-11-07 00:04:51 -06:00
coolreader18
577cea92fe Add coroutines, async/await functionality, and gen.close() 2019-11-07 00:04:50 -06:00
Noah
64674d2d85 Fix clippy parameter number warning 2019-10-14 20:55:00 +00:00
coolreader18
c08f11ad1b Change FunctionOpArg to CodeFlags, stored in CodeObject 2019-10-14 20:20:52 +00:00
Windel Bouwman
64ab147f64 Compress bytecode using LZ4 2019-10-07 20:54:22 +02:00
Seo Sanghyeon
a17456dba5 Raise TypeError for duplicate keyword arguments 2019-10-04 19:29:57 +09:00
coolreader18
d0f7b5f347 Invert the inverted boolean 2019-09-28 00:41:41 -05:00
Noah
499bf146bd Only overwrite the locals in __build_class__ if it's a class 2019-09-28 00:41:41 -05:00
Noah
d88167bb73 Bump crate versions 2019-09-25 11:57:38 -05:00
j30ng
a5bea47bed Remove Enum Instruction::Unpack 2019-09-12 16:30:03 +09:00
Windel Bouwman
2517207175 Make subscript its own bytecode. Remove pass bytecode. Move complex bytecodes into seperate functions to reduce complexity of dispatch function. 2019-08-28 12:06:46 +02:00
Noah
c52328608e Make bytecode::Label its own struct 2019-08-27 21:19:18 +00:00
Windel Bouwman
2ca6e5d399 Implement execution of finally block. Fixes #1306. 2019-08-27 21:16:59 +02:00