blueloveTH
2161532677
fix
2026-07-22 13:21:26 +08:00
blueloveTH
beb1557d00
bump to v2.2.0
2026-07-22 12:49:00 +08:00
BLUELOVETH
4e2b40db2d
test fastpath for self.* read ( #535 )
...
* test fastpath for `self.*` read
* bak
2026-07-22 12:36:58 +08:00
Md Kaif
7fd7e2db15
fix(float): abs(-0.0) should return 0.0 ( #534 )
...
abs(-0.0) returns -0.0 instead of 0.0, and math.fabs(-0.0) does the
same. Both come from the idiom (x < 0) ? -x : x. Since -0.0 < 0 is
false, the negative zero is returned unchanged.
The idiom appears twice, once in dmath_fabs and once open-coded in
float__abs__. Fix dmath_fabs by clearing the sign bit, the same way
dmath_copysign just above it works, and make float__abs__ call the
shared helper instead of repeating the comparison.
abs(-0.0) == 0.0 is true even with the bug, because -0.0 == 0.0 under
IEEE 754, so the added tests compare str(...) to check the sign.
2026-07-21 19:36:08 +08:00
Md Kaif
005550e92a
fix(str): zfill should preserve a leading sign ( #533 )
...
zfill writes the padding zeros before the whole string, so a leading
+ or - ends up in the middle of the result instead of staying in front.
For example "-5".zfill(4) gave '00-5' where CPython gives '-005'.
CPython inserts the padding after the sign character, and the sign
counts toward the requested width. Write the sign first, then the
zeros, then the rest of the string. delta is still computed before
this, so the total length is unchanged.
The existing tests only covered unsigned strings, which is why this
went unnoticed. Added three asserts alongside them.
2026-07-21 19:09:11 +08:00
blueloveTH
f2b6d90a72
Update mpack1.h
2026-07-21 14:30:09 +08:00
blueloveTH
2ed21e8814
Update bindings.c
2026-07-21 14:27:31 +08:00
blueloveTH
08fce73bbb
Update mpack1.h
2026-07-21 14:27:18 +08:00
blueloveTH
4fc4d665ec
improve mpack
2026-07-21 14:09:27 +08:00
blueloveTH
4816c4471b
Update bindings.c
2026-07-20 21:18:18 +08:00
thermalPasteMilkshake
e144785436
re-checking ( #531 )
2026-07-11 10:25:27 +08:00
blueloveTH
27fde79de6
Update py_object.c
2026-07-09 12:46:04 +08:00
blueloveTH
21ff0751dc
fix error name
2026-07-06 17:42:01 +08:00
felfoldy
21248a0baf
Add inspect.signature ( #526 )
...
* Add inspect.signature tests
* Implement inspect.signature
2026-07-06 12:00:58 +08:00
Hezekiah M. Carty
5d20084db7
Update orxpy repository link ( #525 )
...
The pocketpy extension for orx has been merged upstream and is included with the engine out of the box, so my fork is no longer required to use pocketpy + orx.
2026-07-04 09:07:25 +08:00
Rob McMullen
ea82f56373
Fixed missing '\u85' line separator from str.splitlines ( #524 )
...
Very thanks! Your contribution is professional and exceptional.
2026-07-01 11:43:16 +08:00
Rob McMullen
664ce091f8
Added str.splitlines ( #523 )
...
* uses same algorithm as CPython, supports all CPython eol characters
in https://docs.python.org/3/library/stdtypes.html#str.splitlines
2026-06-28 21:56:47 +08:00
Copilot
66ff339bb9
Add dedicated CONTRIBUTING guide and wire it from README ( #521 )
...
* Initial plan
* docs: add contributing guide and link from README
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-06-24 16:55:59 +08:00
blueloveTH
94e71d8581
expose divmod
2026-06-24 16:38:18 +08:00
Steve Chen
894ace2963
Fix JSON integer and float serialization. ( #519 )
...
* Fix JSON integer and float serialization.
* Simplify float serialization round-trip fix
* fix round trip check
* fix lexer EOF OOB read and list.sort comparator signature
* revert
* fix cases
* Update os.c
* add `long_v1`
---------
Co-authored-by: blueloveTH <blueloveTH@foxmail.com>
2026-06-18 11:39:41 +08:00
blueloveTH
338547dc8d
Update 723_msgpack.py
2026-06-18 09:27:39 +08:00
blueloveTH
d527b4dbc9
fix msgpack
2026-06-17 16:30:17 +08:00
blueloveTH
8c4ed3bc34
fix a bug of str
2026-06-02 20:42:03 +08:00
BLUELOVETH
c624833cfb
Add more gc control to improve performance ( #510 )
...
* add more gc control
* fix
* Update gc.c
* Update ceval.c
* [no ci] Update 711_gc.py
2026-04-29 13:55:41 +08:00
blueloveTH
c39d86e999
add __mod__
2026-04-29 12:54:04 +08:00
blueloveTH
826b6f40f9
Update 930_deterministic_float.py
2026-04-23 11:06:38 +08:00
blueloveTH
33b26ebd95
Update 930_deterministic_float.py
...
temp fix
Update math.c
2026-04-22 18:31:23 +08:00
BLUELOVETH
f67b24450b
Merge pull request #504 from pocketpy/test-math-py34
...
[no ci] Add math tests from python 3.4
2026-04-22 18:15:10 +08:00
BLUELOVETH
432e1b4ae3
Merge pull request #502 from ngoyal88/main
...
fix(debugger): prevent memory leak in DAP setBreakpoints error path
2026-04-21 22:04:04 +08:00
Nikhil Goyal
b99d18a9f6
fix(debugger): prevent memory leak in DAP setBreakpoints error path
2026-04-21 17:35:46 +05:30
BLUELOVETH
8424d29fb2
Merge pull request #500 from ngoyal88/main
...
fix(core): prevent memory leak in py_execo error path
2026-04-19 12:45:13 +08:00
Nikhil Goyal
973bbdfea4
fix(core): prevent memory leak in py_execo error path
2026-04-17 20:45:27 +05:30
blueloveTH
5d30381e19
fix #498
2026-04-17 11:10:55 +08:00
blueloveTH
d62b1b4eec
remove linalg compat script
2026-04-07 10:58:12 +08:00
BLUELOVETH
bdf2a61b12
Merge pull request #494 from hcarty/typing-override-typeisguard
...
Add typing.(override, TypeIs, TypeGuard)
2026-04-07 10:53:52 +08:00
Hezekiah M. Carty
94c67437a8
Add typing.(override, TypeIs, TypeGuard)
2026-04-04 09:27:33 -06:00
blueloveTH
2600eb5352
Update lz4.c
2026-04-04 16:09:06 +08:00
blueloveTH
2a2e9ae1f2
Update lz4.c
2026-04-04 15:41:15 +08:00
blueloveTH
6e3ed84a9e
fix stdc.memcpy
2026-04-04 13:24:25 +08:00
blueloveTH
9a57b281e8
add := fix #446
2026-03-28 17:53:39 +08:00
BLUELOVETH
7d9c3c3df0
feat: implement itemgetter and typing placeholders #486 ( #487 )
2026-03-26 11:29:35 +08:00
Steve
37780ed884
feat: implement itemgetter and typing placeholders #486
2026-03-25 23:17:43 -04:00
blueloveTH
005a2725a1
add PK_ENABLE_DLL
2026-03-24 11:02:34 +08:00
Daniel Calderón
d03b067666
adding missing header guard ( #483 )
2026-03-23 11:58:33 +08:00
Jason Matthew Suhari
0676b21da2
fix: save stack checkpoint before pushing args in operator() ( #479 )
...
* fix: capture stack checkpoint before pushing args in operator() (#469 )
* test: add regression test for operator() python error propagation (#469 )
2026-03-20 13:22:25 +08:00
blueloveTH
a2f16e5f1f
pre-release
v2.1.8
2026-03-18 15:10:24 +08:00
blueloveTH
a69cca59f4
post fix
...
Update dll.c
Update dll.c
2026-03-18 15:04:26 +08:00
kushagra-1809
7614bdcc4a
Wrong formulas ( #470 )
...
The correct formulas for complex trigonometry require
cos(z) = (exp(iz) + exp(-iz)) / 2
sin(z) = (exp(iz) - exp(-iz)) / (2i)
2026-03-18 14:58:23 +08:00
wdskuki
984c0eefcc
Fix C extension module import on Linux ( #472 )
...
* Fix C extension module import on Linux
* minor fix
---------
Co-authored-by: wdsmini <wdsmini@wdsmini.local>
Co-authored-by: blueloveTH <blueloveTH@foxmail.com>
2026-03-18 14:55:38 +08:00
blueloveTH
cf70668a2f
improve py_inspect_currentfunction
2026-03-13 22:05:52 +08:00