Blocks needs a definite compatibility story
- 主要言語
- Haskell
- スター
- 1.3k
- フォーク
- 201
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
I've noticed that if I use newer versions of CodeWorld Blocks to reopen projects built with earlier versions, I often get a bunch of black bits that no longer work. We certainly can't have future development similarly breaking old student code!
It would be great to:
1. Understand what caused this to happen, and
2. Adopt a set of rules or conventions to ensure that we don't break future student projects.
I'm guessing that this comes from renaming or changing XML formats or something like that with previous blocks. That seems to bring up an interesting point: Blockly versions come and go and things change, so it's important that CodeWorld takes ownership of the blocks that it expects to be available, so we can migrate and deprecate them on a carefully controlled schedule. It looks like right now, some of CodeWorld's blocks are built-in to Blockly... and I fear this is the wrong decision.
コントリビューションガイド
調査の方向性
Issue ではファイルもテストも特定されていません。まず、CodeWorld Blocks プロジェクトが Blockly のバージョン間でどのように表現され、再度開かれるのかを追跡し、次に互換性と移行のルールを定義してください。完了の条件は、古い学生のプロジェクトを壊れたブロックなしで再度開けることです。
索引モデルが issue の本文から書いたものです。
評価
- 領域
- frontend
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100