Commit Graph
69 Commits
Author SHA1 Message Date
Noa 85ca28094e Apply clippy suggestions to switch to let chains (#6126) 2025-09-04 15:34:10 +09:00
Shahar Naveh 1fcb656363 Set {min,max}_arity (#5994)
* General cleanup

* Compute {min,max}_arity
2025-07-17 13:49:25 +09:00
Jiseok CHOI 177bfb7077 Remove deleter attribute from pygetset (#5984) 2025-07-16 09:44:14 +09:00
Shahar Naveh 5309e8c7c4 Fix invalid args count msg (#5960) 2025-07-16 01:54:51 +09:00
Jeong YunWon 635b4afff1 Fix derive(Traverse) 2025-07-14 14:27:48 +09:00
Shahar Naveh 69545c0798 Use Self where possible (#5892) 2025-07-04 10:08:43 +09:00
Shahar Naveh 43be4e48ad nitpicks (#5886)
* Use `Self` instead of struct name

* General fixes

* General

* General fixes

* More nitpicks

* Added newlines

* More nitpicks

* Use Self where possible

* Use Self where possible

* Use Self

* Use Self more

* Use Self
2025-07-02 21:27:47 +09:00
Shahar Naveh b6ff541260 Create ContentItem with a macro (#5859)
* Create ContentItem with a macro

* Set struct docs via metadata
2025-06-30 00:22:52 +09:00
Shahar Naveh 8cac4335b4 Constify functions & General nitpicks (#5858)
* General cleanups

* Add some newlines

* Use bitlag match

* More constify

* Don't convert to str twice

* constify more

* Use match directly instead of if & match!

* Constify more

* Constify more

* more consts

* Constify more

* Constify more

* Don't use bitflags_match macro
2025-06-28 23:08:30 +09:00
Jeong, YunWon f0c7cb26f7 fn class #[inline] (#5846) 2025-06-27 16:02:44 +09:00
Jeong YunWon 993ea8923c Rename members 2025-06-27 12:32:59 +09:00
Jeong YunWon ef3cf70e30 Remove magic from macro 2025-06-27 12:32:59 +09:00
Noa 0b35946972 Make FromArgs default field take an expression, not a string literal 2025-03-31 11:48:06 +09:00
Jeong YunWon 0abd8b1d87 Fix pystructseq 2025-03-29 09:46:47 +09:00
Jeong, YunWon f27c1f7ea3 Merge pull request #5624 from youknowone/libffi-workspace
common dependency in workspace
2025-03-27 14:51:47 +09:00
Noa bea25a0285 Merge pull request #5627 from youknowone/once-cell
Replace direct use of once_cell to std
2025-03-26 23:36:31 -05:00
Jeong YunWon 549cce24c8 Add #[pystruct(skip)] 2025-03-26 22:40:43 +09:00
Jeong YunWon ec09599d84 Remoce once_cell::Lazy usage 2025-03-26 18:22:23 +09:00
a6b4ef7f5d Replace Python parser with ruff parser (#5494)
* stage1

* compiler pass build

* introduce rustpython-compiler-source

* stage2

* fixup

* pass compile

* Fix hello world compiler test

* Fix code generation for if-elif-else statement

* Fix code generation for lambda expression

* Fix code generation for integers

* Fix code generation for fstrings

* Fix code generation for if statement

* Fix code generation for if statement

* Fix code generation for if statement

* Fix code generation for fstring

* Fix code generation for class definition

* Replace feature flags

* Initialize frozen core modules

* Allow __future__ import after module doc comment

* Disable ast module

* Commit remaining fixes for compile errors in examples

* Fix some warnings

* Update ast stdlib module

* Update ast stdlib module

* Update ast stdlib module

* Update ast stdlib module

* Update ast stdlib module

* Split ast stdlib module into files

* Fix codegen for positional arguments with defaults

* Update ast stdlib module

* Update ast stdlib module

* Extract string and constant handling from expression.rs

* Always add required fields to AST nodes

* Compile doc strings correctly again

* Enable "ast" Cargo feature by default

* Refactor compilation of big integer literal

* Update ast stdlib module

* Update ast stdlib module

* Update ast stdlib module

* Reset barebones example

* Fix some left-over warnings

* Undo accidential change

* Adapt shell to ruff parser

* Pin parser to v0.4.10

* fix clippy

* Add TODO about interactive mode

* Fix compilation of complex number expression

* Remove moved code

* Update test case to ruff v0.4.10

* Apply suggestion

Co-authored-by: Jeong, YunWon <69878+youknowone@users.noreply.github.com>

* Apply suggestion

Co-authored-by: Jeong, YunWon <69878+youknowone@users.noreply.github.com>

* Fix compilation of fstring expression

* Fix compilation of fstring expression

* Fix wasm compile errors

* Attach correct source locations to ast objects

* Fix some more wasm compile errors

* Consider compile mode and enable AST stdlib module again

* Fix incorrect AST source location end column

* Fix compile error if "compiler" feature is not enabled

* Fix regrtests

* Fix some test_ast tests

* Add source range to type ignore

* Fix incompatibility with Rust 2024 edition

* Fix todos by implementing missing ast conversions and deleting unused code

* Appease clippy

* Fix remaining ast tests

* Fix remaining ast tests

* Mark/fix remaining tests

* Fix more

* Hacky windows fix

---------

Co-authored-by: Kangzhi Shi <shikangzhi@gmail.com>
Co-authored-by: Jeong YunWon <jeong@youknowone.org>
Co-authored-by: Jeong, YunWon <69878+youknowone@users.noreply.github.com>
Co-authored-by: Noa <coolreader18@gmail.com>
2025-03-19 21:06:03 -05:00
Noa 6daee1b00e Warn on elided_lifetimes_in_paths 2025-03-01 13:49:33 +09:00
Ashwin Naren b870b0e1b5 2024 edition formatting
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
2025-02-26 11:48:22 -08:00
Noa 8c5602f2fb Fix a bunch of zlib tests 2025-02-26 00:10:24 -06:00
Noa 864e8598f8 Enable rust2024-incompatible pat and keyword-ident lints 2025-02-25 00:32:02 -06:00
Noa 52208b3c90 Update to syn2 (#5556) 2025-02-25 11:54:13 +09:00
Ashwin Naren d698b28ce5 Ensure pymethod cannot be both magic and named simultaneously + macro documentation (#5538)
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
2025-02-22 17:22:31 +09:00
Ashwin Naren 6e35e20e49 dependency bump
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
2025-02-12 18:16:45 +09:00
Noa b7db23bbae Fix warnings for Rust 1.84 2025-01-11 18:48:27 +09:00
Noa fbd0c7a99e Implement IncrementalNewlineDecoder in rust 2024-11-14 23:06:53 -06:00
Jeong YunWon 2919df1df5 Mark rust-version 1.78 2024-08-08 23:20:17 +09:00
Jeong YunWon 8673169ee7 0.4.0 2024-08-07 08:38:21 +09:00
James Clarke 08c9a4d86b Added lints and deny.toml 2024-06-25 03:59:40 +01:00
Jeong YunWon 64cff172a1 pymethod(raw) 2024-06-22 00:40:13 +09:00
Jeong YunWon 52aad1ec08 DefaultConstructor impls Constructor; Unconstructible is not anymore 2024-05-06 00:54:39 +09:00
Lee Dogeon 4d5cf249a0 Allow update __class__ for mutable types or module subclasses (#5225)
* Allow update `__class__` for module subclasses

* Set `IMMUTABLETYPE` flag for static classes

* Unmark fixed tests
2024-04-14 13:03:48 +09:00
Jeong YunWon 8816cd41d5 0.3.1 2024-04-10 17:39:57 +09:00
Jeong YunWon a0b6c36928 Update indexmap 2024-04-09 11:17:25 +09:00
Noa 87cf891e50 Make PyMethodDef construction const (#5117)
* Make PyMethodDef construction const

* Remove iter_chain![]

Obsolete since arrays now impl IntoIterator
2023-11-15 12:52:47 +09:00
Jeong YunWon 1208416b92 0.3.0 release 2023-09-06 18:49:55 +09:00
Jeong, YunWon d4d362a9ca Update to Rust 1.72.0 2023-08-27 00:38:10 +09:00
Jeong, YunWon c28cb3941f prettier *.js + fix miri build (#5028)
* prettier *.js

* bump up proc-macro2
2023-07-19 23:43:26 +09:00
Micha Reiser 7a6000d181 Use format and cformat from rustpython-literal (#4968)
* Use `format` and `cformat` from `rustpython-literal`

* Remove unused dependencies, use `rustpython-format`
2023-05-13 02:58:02 +09:00
Jeong YunWon dc569e9921 Refactoring 2023-05-10 19:35:27 +09:00
Jeong YunWon f2cfa5f0a7 Split parser to new repository
https://github.com/RustPython/Parser/commit/6b60f85cc4ca248af9b787697c41be2adb7a3ec8
2023-05-06 14:38:11 +09:00
Jeong YunWon 98eef0804e Method overhaul with PyMethodDef 2023-04-30 17:33:23 +09:00
Kim Seungha 4a099ab6bc Make builtin method type same as that of builtin function 2023-04-30 13:35:43 +09:00
Jeong YunWon 317f432a20 PyModuleDef and #[pymodule(with(...))] 2023-04-25 04:08:11 +09:00
Jeong, YunWon ce13fc5f03 Merge pull request #4898 from youknowone/pymodule-expose
module objects' type as PyModule
2023-04-25 04:00:52 +09:00
Jeong YunWon f256934f93 Merge define_exception into pyexception 2023-04-24 02:06:13 +09:00
discord9 94bdb6b97a feature: PyTraverse derive macro for traverse object's childrens(like CPython's tp_traverse) (#4872) 2023-04-23 21:43:49 +09:00
Jeong YunWon 19224505e8 module objects' type as PyModule 2023-04-20 20:48:57 +09:00