Skip to content

Add tagged release installers and CLI updater - #12

Merged
MasonChow merged 4 commits into
mainfrom
codex/-tag
Jul 15, 2026
Merged

MasonChow merged 4 commits into
mainfrom
codex/-tag

Conversation

@MasonChow

Copy link
Copy Markdown
Owner

Motivation

  • Provide a release/install workflow so tagged releases produce per-platform artifacts users can download and install.
  • Offer a simple cross-platform installer and an in-package CLI update flow so users can install/update without manual packaging steps.
  • Support both npm and GitHub-Release based distribution to cover users on Windows (npm) and Unix-like systems (bash install).

Description

  • Add a tag-triggered GitHub Actions release workflow at .github/workflows/release.yml that builds/tests Node/WASM across Linux, macOS and Windows and uploads source_map_parser_node-<platform>-<arch>.tar.gz artifacts.
  • Add a cross-platform bash installer scripts/install.sh that detects OS/ARCH, downloads the matching release asset, installs files to an --install-dir, and creates a shim in --bin-dir.
  • Add a packaged CLI crates/node_sdk/bin/source-map-parser.mjs which exposes source-map-parser update [--version] [--from npm|github] and supports updating via npm or by invoking the install script.
  • Include bin/ in crates/node_sdk/package.json and expose the source-map-parser executable, and document install/update and tagged-release usage in crates/node_sdk/README.md.
  • Release packaging step now stages dist/, bin/, skills/, README.md, LICENSE into per-platform tarballs for upload to GitHub Releases.

Testing

  • Ran node crates/node_sdk/bin/source-map-parser.mjs --help and it printed help successfully.
  • Validated scripts/install.sh syntax with bash -n scripts/install.sh and it passed.
  • Ran git diff --check to ensure no whitespace/patch issues and it returned clean.
  • Executed cargo test --workspace --exclude source_map_parser_node --all-features and all unit and integration tests completed successfully (all tests passed).

Codex Task

@MasonChow

Copy link
Copy Markdown
Owner Author
  1. 应该 node 包已经带好 rust 构建好的产物,不应该执行 install,不应该有远程调用
  2. gitlab release 应该带有 npm 包版本和纯 rust 构建出来的多平台 cli
  3. 应该提供在线 bash 升级用户去更新纯 rust 二进制版本

import process from 'node:process';

const PACKAGE_NAME = 'source_map_parser_node';
const INSTALL_SCRIPT_URL = 'https://raw.githubusercontent.com/MasonChow/source-map-parser/main/scripts/install.sh';

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

应该 node 的产物也带这个 sh 脚本,更安全更好被审查

@MasonChow
MasonChow merged commit 4e03b17 into main Jul 15, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant