
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
@stacksjs/bumpx
Advanced tools
A fast, dependency-free version bumping tool similar to bumpp and version-bump-prompt, built for Bun.
--recursive
flag# Install globally
bun install -g @stacksjs/bumpx
# Or use with bunx
bunx @stacksjs/bumpx patch
# Bump patch version (1.0.0 → 1.0.1)
bumpx patch
# Bump minor version (1.0.0 → 1.1.0)
bumpx minor
# Bump major version (1.0.0 → 2.0.0)
bumpx major
# Bump to specific version
bumpx 1.2.3
# Interactive version selection
bumpx prompt
# Bump to prerelease
bumpx prepatch --preid beta # 1.0.0 → 1.0.1-beta.0
bumpx preminor --preid alpha # 1.0.0 → 1.1.0-alpha.0
bumpx premajor --preid rc # 1.0.0 → 2.0.0-rc.0
# Increment prerelease
bumpx prerelease # 1.0.1-beta.0 → 1.0.1-beta.1
# Default behavior: commit, tag, and push (all enabled by default)
bumpx patch
# Disable specific git operations
bumpx patch --no-commit --no-tag --no-push
# Custom commit message
bumpx patch --commit "chore: release v{version}"
# Custom tag name
bumpx patch --tag "v{version}"
# Sign commits and tags
bumpx patch --sign
# Skip git hooks
bumpx patch --no-verify
# Bump all package.json files recursively
bumpx patch --recursive
# Bump specific files
bumpx patch package.json packages/*/package.json
# Execute custom commands
bumpx patch --execute "bun run build" --execute "bun test"
# Install dependencies after bump
bumpx patch --install
# Skip confirmation prompts
bumpx patch --yes
# CI mode (non-interactive, quiet)
bumpx patch --ci
# Print recent commits
bumpx patch --print-commits
# Skip git status check
bumpx patch --no-git-check
bumpx is designed to work seamlessly in CI/CD environments:
# CI mode - automatically non-interactive
bumpx patch --ci
# Or with explicit flags
bumpx patch --yes --quiet
# Auto-detect CI environment
export CI=true
bumpx patch # Automatically enables CI mode
name: Release
on:
workflow_dispatch:
inputs:
release_type:
description: Release type
required: true
default: patch
type: choice
options: [patch, minor, major]
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
fetch-depth: 0
- uses: oven-sh/setup-bun@v1
- name: Install dependencies
run: bun install
- name: Configure git
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
- name: Version bump and release
run: bunx bumpx ${{ github.event.inputs.release_type }} --ci
For more CI/CD examples and configurations, see CI.md.
Create a bumpx.config.ts
file in your project root:
import { defineConfig } from '@stacksjs/bumpx'
export default defineConfig({
// Git options (these are the defaults)
commit: true,
tag: true,
push: true,
sign: false,
// Execution options
install: false,
execute: ['bun run build', 'bun run test'],
// UI options
confirm: true,
quiet: false,
// Advanced options
recursive: false,
printCommits: false
})
You can also use JSON configuration in package.json
:
{
"bumpx": {
"commit": true,
"tag": true,
"push": true,
"execute": ["bun run build"]
}
}
Option | Alias | Description | Default |
---|---|---|---|
--preid | ID for prerelease | ||
--all | Include all files | false | |
--no-git-check | Skip git status check | ||
--commit [msg] | -c | Create git commit | true |
--no-commit | Skip git commit | ||
--tag [name] | -t | Create git tag | true |
--no-tag | Skip git tag | ||
--push | -p | Push to remote | true |
--no-push | Skip git push | ||
--sign | Sign commits and tags | false | |
--install | Run npm install | false | |
--execute | -x | Execute command | |
--recursive | -r | Bump recursively | false |
--yes | -y | Skip confirmation | false |
--quiet | -q | Quiet mode | false |
--ci | CI mode (sets --yes --quiet) | false | |
--no-verify | Skip git hooks | false | |
--ignore-scripts | Ignore npm scripts | false | |
--current-version | Override current version | ||
--print-commits | Show recent commits | false |
You can also use bumpx programmatically:
import { versionBump } from '@stacksjs/bumpx'
await versionBump({
release: 'patch',
commit: true,
tag: true,
push: true,
progress: ({ event, newVersion }) => {
console.log(`${event}: ${newVersion}`)
}
})
Please see our releases page for information on changes.
Please see CONTRIBUTING for details.
For help or discussion:
“Software that is free, but hopes for a postcard.” We love receiving postcards from around the world showing where Stacks is being used! We showcase them on our website too.
Our address: Stacks.js, 12665 Village Ln #2306, Playa Vista, CA 90094, United States 🌎
version-bump-prompt
- for the initial inspirationWe would like to extend our thanks to the following sponsors for funding Stacks development. If you are interested in becoming a sponsor, please reach out to us.
The MIT License (MIT). Please see LICENSE for more information.
Made with 💙
FAQs
Automatically bump your versions.
The npm package @stacksjs/bumpx receives a total of 103,930 weekly downloads. As such, @stacksjs/bumpx popularity was classified as popular.
We found that @stacksjs/bumpx demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.