7.0.0a2
Pre-release of ipykernel
with experimental subshell support on top of tornado
/asyncio
. The previous version 7 pre-releases used anyio
but that will no longer be in ipykernel
7.
Note the changelog here is not correct, presumably due to the recent branch renaming. For the full release this will have to be manually curated so that it is accurate. The "Full Changelog" link below is accurate.
Enhancements made
- Replace BaseThread's add_task with start_soon #1300 (@davidbrochart)
- Use supported_features=['debugger'] in kernel info reply #1296 (@ianthomas23)
- Use zmq-anyio #1291 (@davidbrochart)
- Detect parent change in more cases on unix #1271 (@bluss)
- Kernel subshells (JEP91) implementation #1249 (@ianthomas23)
Bugs fixed
- Forward port from 6.x: Correct use of asyncio.Lock to process a single control message at a time #1418 (@ianthomas23)
- Cache separate headers on subshell threads #1414 (@ianthomas23)
- Fix OutStream using _fid before being defined #1373 (@davidbrochart)
- Make kernelbase._eventloop_set event thread-safe #1366 (@davidbrochart)
- Remove implicit bind_kernel in
%qtconsole
#1315 (@minrk) - Fix ipykernel install #1310 (@davidbrochart)
- socket must be None, not shell_socket for default shell #1281 (@minrk)
- restore zero-copy recv on shell messages #1280 (@minrk)
- Fix eventloop integration with anyio #1265 (@ianthomas23)
Maintenance and upkeep improvements
- Reinstate jupyter_client downstream tests with exclusions #1425 (@ianthomas23)
- Use correct
__version__
onmain
branch after branch manipulations #1419 (@ianthomas23) - Remove links in changelog to github milestones that no longer exist #1415 (@ianthomas23)
- Replace
@flaky.flaky
decorate with pytest fixture #1411 (@mgorny) - chore: update pre-commit hooks #1409 (@pre-commit-ci)
- Bump scientific-python/upload-nightly-action from 0.6.1 to 0.6.2 in the actions group #1404 (@dependabot)
- Backports from
anyio
(oldmain
) branch tomain
branch #1402 (@ianthomas23) - Update pre-commit and github actions #1401 (@ianthomas23)
- Add security.md #1394 (@Carreau)
- chore: update pre-commit hooks #1388 (@pre-commit-ci)
- chore: update pre-commit hooks #1385 (@pre-commit-ci)
- chore: update pre-commit hooks #1383 (@pre-commit-ci)
- chore: update pre-commit hooks #1378 (@pre-commit-ci)
- chore: update pre-commit hooks #1375 (@pre-commit-ci)
- chore: update pre-commit hooks #1372 (@pre-commit-ci)
- Remove nose import. #1368 (@Carreau)
- TQDM workaround due to unresponsive maintainer #1363 (@Carreau)
- chore: update pre-commit hooks #1355 (@pre-commit-ci)
- Fix expected text depending on IPython version. #1354 (@Carreau)
- Another try at tracking down ResourceWarning with tracemalloc. #1353 (@Carreau)
- Remove deprecated modules since 4.3 (2016). #1352 (@Carreau)
- Try to reenable tests from downstream ipywidgets #1350 (@Carreau)
- Disable 3 failing downstream tests, but keep testing the rest. #1349 (@Carreau)
- Licence :: * trove classifers are deprecated #1348 (@Carreau)
- Pin sphinx to resolve docs build failures #1347 (@krassowski)
- Make our own mock kernel methods async #1346 (@Carreau)
- Try to debug non-closed iopub socket #1345 (@Carreau)
- Email is @python.org since 2018 #1343 (@Carreau)
- Remove unused ignores lints. #1342 (@Carreau)
- Enable ruff G002 and fix 6 occurences #1341 (@Carreau)
- Check ignores warnings are still relevant. #1340 (@Carreau)
- Move mypy disablinging error codes on a per-file basis #1338 (@Carreau)
- try to fix spyder kernel install #1337 (@Carreau)
- Remove test_check job #1335 (@Carreau)
- Refine deprecation error messages. #1334 (@Carreau)
- Bump mypy #1333 (@Carreau)
- Remove dead code. #1332 (@Carreau)
- Ignore or fix most of the remaining ruff 0.9.6 errors #1331 (@Carreau)
- minor code reformating valid ruff 0.9.6 #1330 (@Carreau)
- Some formatting changes to prepare bumping ruff pre-commit. #1329 (@Carreau)
- Manually update Codespell and fix new errors. #1328 (@Carreau)
- Manually update mdformat pre-commit and run it. #1327 (@Carreau)
- Manually update pre-commit hooks that do not trigger new errors/fixes. #1326 (@Carreau)
- Try to force precommit-ci to send autoupdate PRs. #1325 (@Carreau)
- Don't rerun test with --lf it hides failures. #1324 (@Carreau)
- Delete always skipped test, fix trio test, fix framelocal has not .clear() #1322 (@Carreau)
- Fix types lints #1321 (@Carreau)
- Remove link to numfocus for funding. #1320 (@Carreau)
- Remove downstream_check #1318 (@Carreau)
- Copy payloadpage.page from IPython #1317 (@Carreau)
- More Informative assert #1314 (@Carreau)
- Fix test_print_to_correct_cell_from_child_thread #1312 (@davidbrochart)
- make debugger class configurable #1307 (@smacke)
- properly close OutStream and various fixes #1305 (@limwz01)
- Remove base setup #1299 (@davidbrochart)
- Suggest to make implementations of some function always return awaitable #1295 (@Carreau)
- Misc type annotations #1294 (@Carreau)
- Rely on intrsphinx_registry to keep intersphinx up to date. #1290 (@Carreau)
- Improve robustness of subshell concurrency tests using Barrier #1288 (@ianthomas23)
- Add 20 min timeout dowstream ipyparallel #1287 (@Carreau)
- Improve robustness of subshell concurrency tests #1285 (@ianthomas23)
- Drop support for Python 3.8 #1284 (@ianthomas23)
- remove deprecated ipyparallel methods now that they are broken anyway #1282 (@minrk)
- start testing on 3.13 #1277 (@Carreau)
- Try to add workflow to publish nightlies #1276 (@Carreau)
- fix mixture of sync/async sockets in IOPubThread #1275 (@minrk)
- Remove some potential dead-code. #1273 (@Carreau)
- Remove direct use of asyncio #1266 (@davidbrochart)
- Specify argtypes when using macos msg #1264 (@ianthomas23)
- Forward port changelog for 6.29.4 and 5 to main branch #1263 (@ianthomas23)
- Ignore warning from trio #1262 (@ianthomas23)
- Build docs on ubuntu #1257 (@blink1073)
Documentation improvements
- Add subshell docstrings #1405 (@ianthomas23)
- Forward port changelog for 6.29.4 and 5 to main branch #1263 (@ianthomas23)
Deprecated features
- Remove deprecated modules since 4.3 (2016). #1352 (@Carreau)
- Suggest to make implementations of some function always return awaitable #1295 (@Carreau)
Other merged PRs
- Ensure test_start_app takes 1s to stop kernel #1364 (@davidbrochart)
- Test more python versions #1358 (@davidbrochart)
Contributors to this release
(GitHub contributors page for this release)
@blink1073 | @bluss | @Carreau | @ccordoba12 | @davidbrochart | @dependabot | @ianthomas23 | @ivanov | @jasongrout | @krassowski | @limwz01 | @mgorny | @minrk | @nathanmcavoy | @pre-commit-ci | @smacke