Aviv Palivoda
17cd22b8e8
Test OSError errno
2019-06-18 19:06:41 +03:00
Aviv Palivoda
9ee1ad93e0
Test os.rename
2019-06-18 19:06:41 +03:00
Aviv Palivoda
2f408f2210
Add conversion from io::Error to OSError
2019-06-18 19:06:00 +03:00
Aviv Palivoda
700d7d4b62
Add os.rename
2019-06-18 19:02:04 +03:00
Windel Bouwman
0f73c746db
Merge pull request #1032 from michelhe/printf-like-string-formatting
...
Printf-style formatting
2019-06-17 21:49:33 +02:00
Michel Heily
64af5c43df
Add some test snippets for modulo string formatting
2019-06-17 19:35:09 +03:00
Michel Heily
adccfa63cf
Fix bugs when parsing format specifiers with key mappings.
...
* Algorithm used for parsing the key from "%(key)d" format did not
handle multiple parenthesis correctly.
* Second problem is that they way we calculated number of consumed chars
was based on str::find, making the code vulnerable to false-positives.
2019-06-17 19:35:09 +03:00
Michel Heily
6fe2c43bf7
Move lambda to its own function in do_cformat
2019-06-17 19:35:09 +03:00
Michel Heily
fca4178353
Avoid unnecessary allocation in modulo formatting
2019-06-17 19:35:09 +03:00
Michel Heily
5d38b9b624
Simplify error handling for CFormatString::from_str
2019-06-17 19:35:09 +03:00
Michel Heily
8d612f3a36
Add %c formatting
2019-06-17 19:35:09 +03:00
Michel Heily
8e880b9bdd
cformat: Fix a bug when formatting unicode strings
...
String::len() returns number of bytes and not number of chars, so it
doens't work as expected for unicode strings.
Also, added a test that would have triggered the bug.
2019-06-17 19:35:09 +03:00
Michel Heily
e374aff0bc
Support '*' for width and precsision for printf-style formatting
2019-06-17 19:35:09 +03:00
Michel Heily
d5ffecea32
objstr: Improve errors for modulo format
2019-06-17 19:35:09 +03:00
Michel Heily
dc77728dbc
cformat: Add some unittests.
...
Also, this commit fixes some bugs that were found using said unittests.
2019-06-17 19:35:09 +03:00
Michel Heily
481b044883
Support modulo formatting of numbers and string types
2019-06-17 19:35:09 +03:00
Michel Heily
fe6c1488d9
Start implementing str.__mod__
2019-06-17 19:35:09 +03:00
Michel Heily
f27265cf8a
Add get_value for objtuple
2019-06-17 19:35:09 +03:00
Michel Heily
d74e126246
Add parser for C printf-style format strings
...
This commit is a part of a series of future commits that will resolve #1007 .
Code is based on vm/src/format.rs.
2019-06-17 19:35:09 +03:00
Windel Bouwman
73edde66f7
Merge pull request #1037 from RustPython/coolreader18/option-source_path
...
Make CodeObject.source_path an Option<String>
2019-06-17 16:58:48 +02:00
coolreader18
b74b65d37e
Make CodeObject.source_path an Option<String>
2019-06-16 19:59:04 -05:00
coolreader18
9b3521904a
Update bench.rs to use vm.compile()
2019-06-16 15:47:27 -05:00
Windel Bouwman
8b0089e258
Merge pull request #1036 from RustPython/coolreader18/stdlib-mods-maplit
...
Use maplit::hashmap! for stdlib::get_module_inits()
2019-06-16 19:21:05 +02:00
coolreader18
b6b8f6ec9c
Have stdlib::get_module_inits() use maplit::hashmap!
2019-06-16 10:33:47 -05:00
Windel Bouwman
ffeaf2d06a
Merge pull request #1034 from RustPython/coolreader18/comptime-pycompilation
...
Allow compiling Python code to bytecode at compile-time
2019-06-16 17:28:02 +02:00
coolreader18
743adf10de
Merge branch 'master' into coolreader18/comptime-pycompilation
2019-06-16 09:05:34 -05:00
coolreader18
d3927ff30e
Merge pull request #1033 from palaviv/open-flags
...
Support more open flags
2019-06-16 00:34:45 -05:00
coolreader18
1814977c45
Add doc comments
2019-06-15 20:19:59 -05:00
coolreader18
6b9bbf3ea4
Change TODO
2019-06-15 13:23:04 -05:00
coolreader18
75c2e4ae9b
Remove lazy_static, just store as a CodeObject
2019-06-15 11:31:30 -05:00
Aviv Palivoda
92ad30ef6a
Add mode argument to os.open
2019-06-15 17:02:46 +03:00
Aviv Palivoda
82f83ef345
Support more open flags
2019-06-15 16:22:51 +03:00
coolreader18
241f5190cc
Formatting
2019-06-15 00:30:14 -05:00
coolreader18
b5ba62fe94
Add lazy_static argument
2019-06-14 21:17:12 -05:00
coolreader18
48966a76e2
Make py_compile_bytecode!() an expression
2019-06-14 18:20:02 -05:00
coolreader18
7817cecc49
Merge pull request #1031 from palaviv/reversed
...
Support reversed on sequence
2019-06-14 15:23:35 -05:00
coolreader18
7e68f9924e
Make Location's fields private again
2019-06-14 14:52:30 -05:00
coolreader18
4d0eb06724
Default source_path
2019-06-14 12:40:01 -05:00
coolreader18
d2cde9a3bf
Use bincode to deserialize into a CodeObject
2019-06-14 12:26:35 -05:00
coolreader18
8143b69165
Change imp_get_frozen_object
2019-06-14 11:31:39 -05:00
coolreader18
9a09a92f31
Merge pull request #1030 from palaviv/import-from-list
...
Import all from_list in one call
2019-06-14 10:56:01 -05:00
coolreader18
e592f3d888
Add py_compile_bytecode! macro
2019-06-14 10:42:45 -05:00
Aviv Palivoda
60e799727f
Support reversed on sequence
2019-06-14 15:25:24 +03:00
Aviv Palivoda
e61fa6dd74
Use Iterator to create from_list
2019-06-14 08:49:20 +03:00
Aviv Palivoda
4938c03d6f
Improve compiler import
2019-06-14 08:45:30 +03:00
Aviv Palivoda
12a3028806
Import all from_list in one __import__ call
2019-06-14 08:27:49 +03:00
coolreader18
8b894a11fb
Merge pull request #1029 from RustPython/coolreader18/rustpython_compiler
...
Split off bytecode compilation into a separate crate
2019-06-13 15:48:11 -04:00
coolreader18
bfd6145d5f
Use RUSTPYTHONPATH in ouroboros instructions
2019-06-13 12:34:30 -05:00
coolreader18
c2502bf8ef
Add doc comments and individual compile functions
2019-06-12 22:04:59 -05:00
coolreader18
45bb2bd263
Split off bytecode compilation into a separate crate
2019-06-12 21:43:43 -05:00