Ipykernel releases and branches

オープン
#1,399 コメント 3 件 リアクション 1 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
20/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
python
領域
release

調査の方向性

main、6.x、anyio ブランチ、コミット 7603443b に対して提案されているブランチの順序と、6.30.0 および 7.0.0 のリリース手順を確認します。まず、必要な maintainer 間の調整とリポジトリのブランチ保護を確認してください。ブランチ構成とリリースが計画どおりで、既存の pull request や下流のバージョンゲーティングを妨げていなければ完了です。

索引モデルが issue の本文から書いたものです。

説明

maintenance

(Reposted from Jupyter Zulip)

There are some plans for ipykernel releases and branch manipulations that I am sharing here for maximum exposure. All comments gratefully received.

The latest ipykernel release was 6.29.5 in July 2024. The current main branch has almost but not quite complete implementations of anyio (instead of tornado) and subshells (JEP91) and it was originally intended that these would be in a 7.0.0 release. However, there are concerns about the use of anyio going forward so I have instead backported subshells to the current 6.x branch so it can be released without anyio (issue #1387).

The release of ipykernel with subshells but not anyio could have been 6.30.0 or 7.0.0, but we have decided that 7.0.0 is more sensible. Subshells do not have to be used and the implementation is backward compatible in the sense that it passes all downstream tests in the ipykernel CI but now shell channel messages are handled in a separate thread and this could break downstream projects that are assuming otherwise, or that might now receive messages with different timings or in a different order. 7.0.0 will allow downstream projects to version gate on ipykernel<7 while they check and fix such issues.

We also think it wise to make a 6.30.0 release anyway based on the 6.x branch before subshells was added so that we can support the 6.x branch whilst projects are transferring to 7.

This needs some branch manipulation in the ipykernel repo:

  1. main renamed to anyio or some other name implying future or 8.x
  2. 6.x renamed to main
  3. 6.x before subshells were added (commit 7603443b) becomes the head of 6.x

I have sufficient permissions in the ipykernel repo to make these changes, but given the potential for messing things up I will only do in the presence of another maintainer; both Jason and Zach have previously said they might be available and are good choices being members of both the Jupyter Kernels Council and the EC.

Planned sequence of changes:

  1. Rename main to anyio, moving across all current PRs submitted against main
  2. Rename 6.x to main, set as default branch and update branch rules to protect against a push.
  3. Use commit 7603443b as the new head of 6.x
  4. Backport maintainance fixes from old main to new main and 6.x branches
  5. Release 6.30.0 from 6.x branch
  6. Release 7.0.0 from main branch
  7. Longer term discussion on the use of anyio vs tornado etc

I would like to start this soon, meaning weeks rather than months.

主要言語
Python
スター
734
フォーク
411
平均マージ
1日 2時間
マージ済み PR(30日)
9

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

ipython/ipykernel のほかの issue

ipython/ipykernel の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。