Skip to content

Releases: chujiu-dev/obsidian-code-runner

1.2.3

Choose a tag to compare

@chujiu-dev chujiu-dev released this 15 Jul 03:04

1.2.3

Settings Page Redesign

  • Categorized layout: Settings now organized into General, Runtime, and Experimental sections with localized headings
  • Pyodide CDN: Now configurable via text input in the Runtime section (previously hidden in data.json). Supports mirrors or self-hosted instances.
  • Experimental: Planned features (Context-Aware I/O Prompts, Code auto-complete, Additional Plugins) grouped under a dedicated section

1.2.2

Choose a tag to compare

@chujiu-dev chujiu-dev released this 14 Jul 03:31

1.2.2

Community Review Fixes

  • no-unsupported-api: Revert app.loadLocalStorage/saveLocalStorage back to localStorage with improved eslint-disable comments explaining the minAppVersion trade-off. This preserves compatibility with older Obsidian installs (minAppVersion stays at 0.12.0).
  • no-unsafe-assignment / no-unsafe-argument: Eliminated by reverting to localStorage (Obsidian's type definitions declare loadLocalStorage as returning any | null).

1.2.1

Choose a tag to compare

@chujiu-dev chujiu-dev released this 14 Jul 03:19

1.2.1

Community Review Fixes

  • manifest.json: Remove 'Obsidian' from plugin description (community guideline)
  • Python backend: Add comment in empty catch block to satisfy linter
  • Storage API: Replace raw localStorage with Obsidian's app.loadLocalStorage/app.saveLocalStorage for vault-scoped persistence

1.2.0

Choose a tag to compare

@chujiu-dev chujiu-dev released this 14 Jul 03:09

1.2.0

New Features

  • i18n internationalization: Auto-detect Obsidian interface language (Chinese/English), with manual override option. All UI text, input labels, and error messages are now localized.
  • Language auto-detection: Plugin follows Obsidian language by default, no manual setup needed.

Improvements

  • Compiler warnings: Displayed as collapsed grey block with click-to-expand (single-line summary, full diagnostics inside).
  • Settings restructure: Removed placeholder settings (Auto stdin detect, Enhanced syntax highlighting). Added Coming Soon section for planned features (Context-Aware I/O Prompts, Code auto-complete).
  • Instant settings save: Language preference persisted immediately on change.

Bug Fixes

  • C language routing: Fixed C code incorrectly compiled as C++ via SoloLearn API.

1.1.8

Choose a tag to compare

@chujiu-dev chujiu-dev released this 13 Jul 11:48

Fix

  • 修复 stdout 缓冲区刷新问题: 当 Python 代码使用 print(x, end=" ") 等无换行输出时,执行完毕后自动调用 print() 强制刷新 Pyodide 的 batched stdout 缓冲区,确保输出不会消失。

1.1.7

Choose a tag to compare

@chujiu-dev chujiu-dev released this 13 Jul 11:33

Fix

  • 修复 stdout 缓冲区刷新问题: 当 Python 代码使用 print(x, end=" ") 等无换行输出时,输出不再消失。执行完毕后自动调用 print() 强制刷新 Pyodide 的 batched stdout 缓冲区。

1.1.6

Choose a tag to compare

@chujiu-dev chujiu-dev released this 11 Jul 14:39

Fixes for Obsidian Community Plugin Review

  • Remove 'Obsidian' from manifest description (redundant per review policy)
  • Replace dynamic import variable with static URL string to fix 'Unsafe call to import' error
  • Add descriptions to eslint-enable directive comments in Play.tsx
  • Fix eslint-disable-next-line placement for engine.terminate()
  • Add eslint-disable for unsafe return in python.ts cache check
  • Bundle: 50.38 KB

1.1.5

Choose a tag to compare

@chujiu-dev chujiu-dev released this 11 Jul 14:17

Fixes for Obsidian Community Plugin Review

  • Remove 'Obsidian' from manifest description (redundant per review policy)
  • Replace dynamic import variable with static URL string to fix 'Unsafe call to import' error
  • Add descriptions to eslint-enable directive comments in Play.tsx
  • Fix eslint-disable-next-line placement for engine.terminate()
  • Add eslint-disable for unsafe return in python.ts cache check
  • Bundle: 50.38 KB

1.0.8 - Interactive Input Detection

Choose a tag to compare

@chujiu-dev chujiu-dev released this 09 Jul 09:10

Changes

New Features

  • Interactive input detection: Programs using input(), scanf(), Scanner and other stdin functions are now detected before execution and show a bilingual warning instead of freezing Obsidian
  • Detects stdin usage across 8 languages: Python, C, C++, Java, Go, C#, Swift, R

Fixes

  • Prevents Obsidian from freezing when running programs that require real-time interactive input (feature under development)

README

  • Updated future plans section to mention interactive input feature

1.0.7 - UI Improvements

Choose a tag to compare

@chujiu-dev chujiu-dev released this 09 Jul 08:44

Changes

New Features

  • Gray separator line: A thick gray horizontal line now separates the code block from the input/output areas
  • Close buttons: A × button at the top-right of both input and output areas for easy dismissal/clearing on all platforms (especially useful on iPad where hover-based controls don't work)

Fixes

  • Removed hover-dependent clear button — replaced with always-visible × button for cross-platform consistency
  • Section labels deferred to a future release with language switching support