Skip to content

Releases: notgate/Ironbullet

Ironbullet v0.6.2-rc.4

Choose a tag to compare

@notgate notgate released this 18 Jul 10:41

Ironbullet v0.6.2-rc.4

Hotfix RC for encrypted-proxy Xray lifecycle cleanup after job completion.

Fixed

  • Fixed xray.exe remaining visible in Task Manager after a GUI job completes while Ironbullet stays open.
  • Added job-scoped leases for managed Xray adapters so encrypted proxy processes are ref-counted and torn down when the last owning job drains.
  • Covered both config jobs and proxy-check jobs that resolve VMess/VLESS/Trojan URIs through bundled Xray Core.
  • Kept concurrent jobs safe: shared encrypted proxy adapters stay alive until every active owner releases its lease.
  • Removed an external httpbin.org dependency from a unit test by replacing it with a local HTTP fixture.

Verification

  • cargo test --lib --no-default-features — 91 passed.
  • cargo test --test config_speed_fixture_test --no-default-features — 1 passed.
  • scripts/build-windows-native.cmd — passed.
  • tools/config-speed-test/test-xray-cleanup.ps1 — passed against the packaged RC4 bundle.
  • Packaged cleanup smoke observed an xray.exe child during execution and reported zero leaked Xray PIDs and zero leaked generated configs after exit.

Artifact

  • Asset: ironbullet-v0.6.2-rc.4-windows-x64.zip
  • SHA-256: 41c29657775b87feb855a24f532f96a6e937e540ec1f68855cb65e10d31b70b7
  • Size: 35,359,290 bytes

Ironbullet v0.6.2-rc.3

Choose a tag to compare

@notgate notgate released this 18 Jul 04:36

Ironbullet v0.6.2-rc.3

This release candidate fixes Xray adapter lifecycle and job-state races reported in #73 and adds a deterministic config-speed regression harness.

Fixed

  • Single-flight startup for identical VMess, VLESS, and Trojan proxy URIs.
  • Parallel startup remains available for different encrypted proxy URIs.
  • Application shutdown now fences in-flight Xray initialization, rejects late resolutions, terminates every managed Xray child, and removes generated configs.
  • Xray cleanup runs on CLI completion, confirmed GUI close, and event-loop destruction.
  • Failed Xray startup removes temporary configuration files.
  • CLI completion no longer waits forever on a hit channel whose sender was still owned by the runner.
  • Stopped jobs are no longer overwritten as Completed when asynchronous work drains.
  • Per-run generations prevent stale hit, stats, and completion tasks from mutating or detaching a restarted job.
  • A distinct Stopping state prevents restart, edit, or removal until old workers drain; a cancellation latch also prevents stop-before-start from being undone.
  • Paused Save & Resume now waits for the update acknowledgement and resumes the existing runner; stopped/completed jobs are labeled and handled as restarts.
  • Running/paused progress no longer displays 100% before final completion, and stale deleted-job selections are cleared.

Verification

Windows x64 native build with the pinned NASM, LLVM, and Xray runtime:

  • 90 Rust library tests passed.
  • Binary, config fixture, proxy parsing, and Shadowsocks integration tests passed.
  • Frontend production build passed.
  • Packaged Xray smoke test observed an Xray child, then verified IronBullet exit code 0, zero leaked Xray processes, and zero leaked generated configs.
  • Direct loopback benchmark: 1,000 processed, 1,000 successful HTTP-200 outcomes, 0 fails/errors/missing/duplicates, 331.6 successful requests/second, 100 peak concurrent requests.
  • Local forwarding-proxy benchmark: 1,000 processed through the proxy, 1,000 successful HTTP-200 outcomes, 0 fails/errors/missing/duplicates, 326.1 successful requests/second, 100 peak concurrent proxy requests.
  • A separate ten-candidate public HTTP-proxy sample found two reachable and eight failed/timed-out proxies, confirming public proxy volatility is not a valid deterministic performance baseline.

Windows x64 bundle

ironbullet-v0.6.2-rc.3-windows-x64.zip

SHA-256: 85356f67e314a9b0818b6c46e96d2f3fbe40c2b54daba7d19cd24a5109aa8655

The ZIP contains ironbullet.exe, reqflow-sidecar.exe, the pinned xray.exe, XRAY-LICENSE.txt, and release-manifest.sha256.

Ironbullet v0.6.2-rc.2

Choose a tag to compare

@notgate notgate released this 15 Jul 15:39

Job-runner accounting hotfix.

  • Workers now drain late retry/error work before completing.
  • Done/Total and progress now reflect unique inputs attempted, not retryable outcome counters.

SHA-256 (ironbullet-v0.6.2-rc.2-windows-x64.zip):
57176371ab6c7eef51ef9bb70b192f97dfe8bb418d268923fa050acfe25341df

Ironbullet v0.6.2-rc.1

Choose a tag to compare

@notgate notgate released this 15 Jul 08:24

Windows hotfix RC: managed Xray proxy adapters now launch without visible console windows.

SHA-256 (ironbullet-v0.6.2-rc.1-windows-x64.zip):
dca82b86d86456947f0cf7d92e877b0298749a091140106a34ff0027c6ffc4a3

Ironbullet v0.6.2

Choose a tag to compare

@notgate notgate released this 15 Jul 04:18

Stable release

  • Bundles Xray Core v26.3.27 for managed VMess, VLESS, and Trojan URI sources.
  • Resolves encrypted proxy URIs into isolated local SOCKS5 listeners for the existing request engines.
  • Includes VLESS TLS/Reality, VMess, and Trojan stream settings.
  • Adds interactive HTTP Request, Translate, and Get DOM documentation playgrounds.

Verification

  • 77/77 Rust library tests passed.
  • Native Windows release build passed.
  • Controlled loopback VLESS SOCKS5 tunnel passed an HTTP fixture request.
  • VMess and Trojan configurations validated with the bundled Xray binary.

Windows x64 bundle

ironbullet-v0.6.2-windows-x64.zip

SHA-256: dd584c6bb0ee70ec0ec7a6695163a40518ff9558333dec6247ce2e91a1232788

v0.6.1

Choose a tag to compare

@notgate notgate released this 14 Apr 22:15

IronBullet v0.6.1

This release fixes the currently open user-reported bugs and refreshes the packaged binaries.

Included fixes

  • Issue #67: fixed the proxy mode regression so Sticky and No Proxies selections no longer collapse back to Rotate.
  • Issue #68: fixed single-tab dirty-state tracking so config edits are detected immediately.
  • Issue #12: hardened proxy settings persistence so saved settings survive reloads.
  • Issue #69: added startup crash protection for missing or legacy config fields.

Release assets

  • Windows x64 zip with ironbullet.exe and reqflow-sidecar.exe
  • Linux x64 zip with ironbullet, reqflow-sidecar, and start.sh

Validation

  • cargo test --workspace --all-targets passed
  • Release archives were rebuilt with sidecar included
  • Release notes and packaged text were kept free of emojis

v0.6.0

Choose a tag to compare

@notgate notgate released this 07 Apr 04:10

v0.6.0 — Kind of a big update

Bug Fixes

  • #64 — Errored credentials requeued for final pass. Accounts that exhaust max_retries due to transient network/proxy errors are stashed and replayed once after the main pool drains with fresh proxies. Valid hits are no longer silently lost.
  • #58/#59 — Sticky proxy mode auto-elevation. Selecting a Sticky proxy group in the Job dialog or loading a Saved Config now correctly activates Sticky mode. Both build_proxy_pool() and job creation resolve the group's own mode when the top-level mode is None.
  • #63 — Proxy mode and active group preserved per saved config. Loading an .rfx file no longer overwrites its proxy_mode/active_group — only group definitions are synced from globals.

New Features

  • #62 — Custom user input variables. Configs can define custom_inputs (name, description, type, default). The Job dialog shows input fields, and values are injected into the globals namespace accessible via <globals.KEY>.
  • #51 — Drag-and-drop file import. Drop .txt/.csv files onto the Data/Proxy panel to auto-add them as proxy sources. Visual ring highlight during drag.

Download

Extract the zip and place both ironbullet.exe and reqflow-sidecar.exe in the same directory.

v0.5.5 — Bug Fix Release

Choose a tag to compare

@notgate notgate released this 06 Apr 16:20

Bug Fixes

  • #57 Startup restore regression: After v0.5.4, the dedup check caused the startup-restored tab (empty content, correct filePath) to be reused when opening the same file from Collections, discarding the real pipeline data. Fixed: `AppState::new()` now loads the last-opened pipeline from disk at startup.
  • #58 SOCKS5 proxies ignored in Saved Config jobs: `create_job` inherited `proxy_groups` from GuiConfig but not `proxy_mode` or `proxy_sources`, so in-session SOCKS5 config was not applied to Saved Config jobs. Fixed: proxy_mode and proxy_sources are now inherited from the active in-memory pipeline.
  • #59 Sticky mode group override ignored: Auto-elevating `proxy_mode` from None hardcoded `ProxyMode::Rotate` instead of reading `ProxyGroup.mode`, so Sticky groups always ran in Rotate mode. Fixed: uses the selected group's own mode when elevating.

v0.5.4 — Bug Fix Release

Choose a tag to compare

@notgate notgate released this 06 Apr 11:10

Bug Fixes

  • #57 Duplicate tabs: Opening the same config file now switches to the existing tab instead of creating a duplicate.
  • #58 SOCKS5 proxy groups ignored in Saved Config jobs: Global proxy groups were not restored when loading via config_path. Fixed create_job to apply proxy_groups from GuiConfig.
  • #59 Job dialog proxy group override ignored when pipeline proxy_mode=None: Selecting a proxy group in New Job had no effect if proxy mode wasn't already set. Now auto-elevates to Rotate.
  • #60 Output file named "New_Config_1" for Current Tab jobs: Fixed create_job to rename from the file stem using pipeline_path when the pipeline has a default name.
  • #61 CRITICAL WebView2 Out of Memory with SOCKS5 proxies: The jobs_list IPC broadcast (every 500ms) was serializing up to 500 ResultEntry structs with full block_results — potentially MB of JSON per message. recent_results is now excluded from jobs_list and only fetched on demand by the debug log dialog.

IronBullet v0.5.3 - Critical Bug Fixes

Choose a tag to compare

@notgate notgate released this 05 Apr 19:16

IronBullet v0.5.3

Release Date: 2026-04-05
Type: Stable Release


Key Fixes

SOCKS5 Proxies in Jobs Mode (Issue #56)

SOCKS5 proxies previously worked in Debugger mode but failed in Jobs mode unless manually configured.

What changed:

  • host:port entries are now auto-detected
  • Common SOCKS5 and Shadowsocks ports are recognized automatically
  • Explicit proxy schemes still take priority

Result: SOCKS5 proxies now work in Jobs mode without extra configuration.


WebView2 Memory Leak with Shadowsocks

Long-running jobs with Shadowsocks caused CPU and memory usage to spike due to untracked background tasks.

What changed:

  • All spawned tasks are now tracked and properly cleaned up
  • Old or dead tasks are aborted before new ones start
  • Prevents duplicate task buildup

Result: Stable performance during extended runs.


Improvements

  • Added a proxy parsing test suite covering multiple formats and edge cases
  • Improved internal documentation and code comments

Reminder: This is a release candidate. Test before using in production.