Skip to content

Releases: oharu121/markleon

v0.2.0 - Set up Marketplace + Open VSX publishing

Choose a tag to compare

@oharu121 oharu121 released this 11 Jul 03:30

Status: Completed
Date: 2026-07-11

Goal

Establish an automated release-publish pipeline for the markleon VS Code extension, triggered when a GitHub release is published, and harden the CI that gates it.

Summary of Changes

  • Rewrote the publish workflow to fit a pnpm-based VS Code extension: trigger release: published, pnpm --frozen-lockfile, real gates (typecheck + lint + test).
  • Publishes a single packaged .vsix to the VS Code Marketplace (vsce) and Open VSX (ovsx, idempotent namespace create).
  • npm Trusted Publishing via OIDC — no stored token, automatic provenance; runs last so it can't block the extension publish.
  • Repaired the Dependabot auto-merge workflow (fetch-metadata@v5@v3).
  • Upgraded to TypeScript 6 and @types/node 24 (LTS line); explicit "types": ["node", "vscode"]; Dependabot pins @types/node majors to the Node LTS line.
  • Added "packageManager": "pnpm@10.21.0" for pnpm/action-setup in CI.

Breaking Changes

None (user-facing extension behavior unchanged).

Deprecations

Azure DevOps retires global PATs on 2026-12-01; VSCE_PAT must migrate to Entra ID/OIDC before then.

v0.1.1 - Initial implementation of Markleon VSCode extension

Choose a tag to compare

@oharu121 oharu121 released this 07 Jul 15:31

Status: Completed
Date: 2026-07-07

Goal

Build a VSCode extension that provides live, server-less markdown preview with toggleable blog-provider rendering flavors (Zenn and Qiita). Both providers use markdown-it with custom plugins and inline CSS for a lightweight, fast bundle.

Summary of Changes

  • VSCode extension scaffold: package.json manifest, tsconfig, esbuild bundler, launch config
  • Provider interface and registry pattern for extensible markdown renderers
  • Zenn provider: markdown-it with :::message, :::message alert, :::details Title, lang:filename code blocks
  • Qiita provider: markdown-it with :::note info/warn/alert, lang:filename code blocks
  • WebviewPanel manager with toolbar dropdown for provider switching
  • Debounced live preview on text change with last-editor tracking for focus resilience
  • Insert Note Block command that adapts to active provider
  • Inline CSS with var(--vscode-*) for theme awareness
  • 264KB bundle (no heavy dependencies like shiki/cheerio/sanitize-html)

Files Modified

  • src/extension.ts - Extension entry point, registers 3 commands
  • src/types.ts - Provider interface and message types
  • src/providers/zenn.ts - Zenn markdown renderer with inline CSS
  • src/providers/qiita.ts - Qiita markdown renderer with inline CSS
  • src/providers/registry.ts - Provider registry
  • src/webview/panel-manager.ts - WebviewPanel lifecycle and content updates
  • src/webview/html-template.ts - Webview HTML with CSP, toolbar, message handling
  • src/commands/insert-note.ts - Insert Note Block command
  • src/util/debounce.ts - Debounce utility

Breaking Changes

None (initial implementation)

Deprecations

None