Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yml Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment Tip CodeRabbit can scan for known vulnerabilities in your dependencies using OSV Scanner.OSV Scanner will automatically detect and report security vulnerabilities in your project's dependencies. No additional configuration is required. |
📦 Library DependenciesThe following Lib/ modules were modified. Here are their dependencies: [x] lib: cpython/Lib/opcode.py dependencies:
dependent tests: (44 tests)
[ ] test: cpython/Lib/test/test_class.py (TODO: 15) dependencies: dependent tests: (no tests depend on class) [ ] lib: cpython/Lib/collections dependencies:
dependent tests: (302 tests)
[x] test: cpython/Lib/test/test_complex.py (TODO: 2) dependencies: dependent tests: (no tests depend on complex) [ ] test: cpython/Lib/test/test_descr.py (TODO: 44) dependencies: dependent tests: (no tests depend on descr) [x] lib: cpython/Lib/dis.py dependencies:
dependent tests: (70 tests)
[x] test: cpython/Lib/test/test_format.py (TODO: 6) dependencies: dependent tests: (no tests depend on format) [x] test: cpython/Lib/test/test_math.py dependencies: dependent tests: (229 tests)
[x] test: cpython/Lib/test/test_str.py (TODO: 16) dependencies: dependent tests: (no tests depend on str) [x] lib: cpython/Lib/types.py dependencies:
dependent tests: (52 tests)
Legend:
|
Note
This pull request is not ready to review yet.
This pull request corrects
complex's multiply and truediv.The original problem was fundamentally due to
num-complexnot fully implementing the recovery logic defined in C99, which resulted in improper handling of INF/NaN values. So, for now, I've forkednum-complexto RustPython/num-complex and applied some arbitrary fixes. I don't plan on opening a PR for this right away, as I need to review whether the implementation correctly follows the C99 standard's behavior.Additionally, there were parts where the implementation for operations like real / complex or complex / real differed from CPython, so I've applied fixes for those as well.