What's Changed
- Fix OSAccess text appends to byte-backed files by @skulitom in #1121
- Fix
QUOTE_NONNUMERICfor custom numeric classes by @RanaPriyansh in #1115 - Preserve JS future snapshots after auto-resume rejection by @Claire-ovo in #1118
- Support bytes arguments in float() by @GoldArowana in #1120
- Collect enclosing bindings from function defaults by @RanaPriyansh in #1102
- Refill monty-pool to
min_processesin the background by @samuelcolvin in #926 - Allow Rust hosts to set session telemetry parents by @strawgate in #1129
- Split compact BuiltinType from runtime Type by @jaheba in #1100
- Refuse removal of the OSAccess filesystem root by @oodadoudou in #1164
- Allow hosts to lower the protocol decode budget by @strawgate in #1145
- Fix session disposal race in websocket header test by @jaheba in #1167
- Fix type checking for open builtin by @DanielTemesgen in #943
- Preserve file types in stat results with special permission bits by @oodadoudou in #1161
- Fix out-of-range bounds in str and bytes methods by @Likheet in #1136
- Raise
OverflowErrorwhen date arithmetic leaves the supported range by @Likheet in #1135 - Dict: Preserve original key when updating entry by @Likheet in #1139
- Report intermediate files as NotADirectoryError in OSAccess by @oodadoudou in #1163
- Fall back to insertion order in
Counterrepr when counts cannot be ordered by @Likheet in #1151 - Write a function's repr without quotes around its name by @Likheet in #1156
- Support
default=injson.dumps()andjson.dump()by @samuelcolvin in #1171 - Add the
fnmatchmodule by @samuelcolvin in #1172 - File imports by @samuelcolvin in #1072
- Add
Value::InlineStringvariant by @jaheba in #994 - Split CodSpeed walltime from shared x86 simulation and memory by @jaheba in #1087
- Configure CPU execution limits and supervision per pool by @strawgate in #1165
- Compare inline strings directly as bytes by @jaheba in #1185
- Add
typing.get_type_hints()by @samuelcolvin in #1126 - Preserve WebSocket disconnect diagnostics in the Python client by @strawgate in #1180
- Run every CodSpeed mode in one workflow, walltime behind a label by @samuelcolvin in #1198
- Add
datetime.fromtimestamp()anddate.fromtimestamp()by @samuelcolvin in #1170 - Bump rust-lang/crates-io-auth-action from 1.0.5 to 1.0.6 by @dependabot[bot] in #1203
- Bump taiki-e/install-action from 2.87.26 to 2.87.31 by @dependabot[bot] in #1204
- Bump actions/cache/restore from 5.1.0 to 6.1.0 by @dependabot[bot] in #1205
- Bump getsentry/codecov-action from 0.4.3 to 0.4.4 by @dependabot[bot] in #1206
- Bump astral-sh/setup-uv from 10.2.0 to 10.3.2 by @dependabot[bot] in #1207
- Raise MontyRuntimeError when a result cannot be converted to Python by @rewitt94 in #1191
- Charge directory creation against a mount's write_bytes_limit by @rewitt94 in #1187
- Fail empty paths in the sandbox instead of resolving them to the cwd by @rewitt94 in #1190
- Add
annotationlib,get_type_hintsformats and PEP 563 handling by @samuelcolvin in #1194 - Cap MemoryFile growth in OSAccess by @rewitt94 in #1188
- Recycle pool workers after 1000 checkouts by default by @rewitt94 in #1189
- Record
__cause__and__context__on exceptions by @samuelcolvin in #1173 - Allow checkouts to confirm subprocess termination by @strawgate in #1215
- Re-enable string parser fuzzing by @jaheba in #1211
- Avoid repeated full-string scans in indexing and search by @jaheba in #1195
- Preallocate dict literals from their pair count by @jaheba in #1218
- PEP 649
__annotate__by @samuelcolvin in #1214 - Propagate uncatchable errors from key_error and repr export by @rewitt94 in #1224
- gRPC transport by @samuelcolvin in #1216
- Raise MemoryError from container repr instead of truncating by @rewitt94 in #1221
- Fix in-place mutation for builtin containers by @jaheba in #1229
- Apply the checkout's os_policy to restored sessions by @rewitt94 in #1225
- Verify remote server certificates with the operating system's trust store by @samuelcolvin in #1231
- Sort with a port of CPython's timsort by @rewitt94 in #1232
- Release half-built results when a builtin's limit check fails by @rewitt94 in #1233
- Parse regex patterns with CPython's grammar by @rewitt94 in #1217
- Strip only spaces and tabs before eval() source by @rewitt94 in #1234
- Monty client not a gRPC server error by @rewitt94 in #1237
- Bump fancy-regex to 0.20.0 by @rewitt94 in #1238
- Pin internal crate dependencies to exact versions by @samuelcolvin in #1251
- Cap file-import search at 32
__path__directories by @samuelcolvin in #1248 - Bump version to v1.5.0 by @samuelcolvin in #1253
New Contributors
- @skulitom made their first contribution in #1121
- @Claire-ovo made their first contribution in #1118
- @oodadoudou made their first contribution in #1164
- @DanielTemesgen made their first contribution in #943
Full Changelog: 1.4.0...v1.5.0