Skip to content

IDE links carry the block's features= - #35

Merged
cedricvogel-leo merged 1 commit into
mainfrom
feature/ide-link-features
Nov 8, 2026
Merged

cedricvogel-leo merged 1 commit into
mainfrom
feature/ide-link-features

Conversation

@cedricvogel-leo

Copy link
Copy Markdown
Collaborator

P34 C: «In IDE öffnen» and «IDE-Link kopieren» pass the block's features= on to the IDE (glpython-edu.github.io#41).

  • With features=: the block's effective list (what it shows) goes into the IDE link's payload as "features": [...], e.g. ["run", "repl", "visualize", "tests", "ide", "coverage", "listtree", "tree"]. The IDE starts the tab with the same parts and ignores ide and reset.
  • Without features=: the block writes nothing, and the IDE shows what it always does.
  • Starting state: in the IDE, ⋮ «Optionen» can switch each part, e.g. for a teacher looking at a hand-in.
  • README: a paragraph in the IDE-link section.

Checks

  • New in check:ready: a block with features=run,repl,visualize,tests,ide,coverage,listtree,tree copies a link whose payload (read with zlib) has exactly that list.
  • Existing case (a block without features=): now also checks that no features is written.
  • check-macro passes.

Going live

  • Ride along: merge this with the Etappe 4 release bump (a course patch version bump), like any macro change.
  • Order: the IDE (#41, after glpython-editor#56's tag) should be live first. Before that, the old IDE ignores the unknown field, so nothing breaks, but the settings only take effect once #41 is deployed.

Manual tests

Desktop and iPad (external keyboard), after the course bump:

  1. A block with features=run,repl,visualize,tests,ide,listtree,tree: «In IDE öffnen» opens the IDE with «Baum» in the visualizer and trees in the console.
  2. In that tab, ⋮ → Optionen shows the block's parts switched on and the others off.
  3. A block without features=: the IDE is as before.

🤖 Generated with Claude Code

«IDE-Link kopieren» and «In IDE öffnen» put the block's effective
features= list into the IDE link's payload ("features"), so the IDE tab
starts with the same parts; a block without features= writes none.
check:ready covers both.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cedricvogel-leo
cedricvogel-leo merged commit 23be75a into main Nov 8, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant