Skip to content

Releases: pulp-platform/bender

0.32.1 - 2026-07-07

Choose a tag to compare

@github-actions github-actions released this 07 Jul 14:46

Release Notes

Added

  • Add git_submodules config field and --git-submodules <true|false> flag (env BENDER_GIT_SUBMODULES) to control cloning of dependency submodules; defaults to true, the flag overrides the configured value in either direction (#314).

Fixed

  • script: Remove .svh files from verilog pattern list (#313).
  • script: keep untyped files in flist script output (#316).
  • Fix the legacy installer falling back to the GitHub "latest" release, which now uses the cargo-dist scheme without legacy-named assets; it now falls back to the last legacy release (v0.31.0) so installing an old version on an unlisted platform works again (#320).

Changed

  • database: speed up bender usage with locks by using shared locks with read-only unless required (checkout, fetch, update), adjust lock location (#315).

Install bender 0.32.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/pulp-platform/bender/releases/download/v0.32.1/bender-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/pulp-platform/bender/releases/download/v0.32.1/bender-installer.ps1 | iex"

Download bender 0.32.1

File Platform Checksum
bender-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
bender-x86_64-apple-darwin.tar.xz Intel macOS checksum
bender-x86_64-pc-windows-msvc.zip x64 Windows checksum
bender-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
bender-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

0.32.0 - 2026-06-05

Choose a tag to compare

@github-actions github-actions released this 05 Jun 10:04

Release Notes

Breaking Changes

  • Download url script now no longer installs locally by default, but instead places in cargo's default location for binaries, which is typically in the user's PATH. The old behavior can be achieved by using --local.

Added

  • Add new crates/bender-slang crate that integrates the vendored Slang parser via a Rust/C++ bridge (#264).
  • Add new pickle command (behind feature slang) to parse and re-emit SystemVerilog sources (#264, #272).
  • Add target filtering for defines (#287).
  • feat: Add -v/--verbose flag and migrate to log crate (#296).
  • Add bender book to repository (#295).
  • Add cross-process filesystem locks around git database and checkout operations so concurrent bender invocations against the same dependency serialize safely (#307).
  • Add db_dir config field to share bare-repo and lock storage across projects without relocating per-project checkouts; older Bender versions silently ignore the field and fall back to their per-project default (#307).
  • Add script filtering by top module for systemverilog sources (#297).

Fixed

  • Realign sources output for consistency with legacy flows (#286).
  • audit: Fix false path conflict for equivalent relative paths (#291).
  • Fix packages with empty sources (#294).
  • fix(paths): Resolve env vars before applying prefix to dependency paths (#303).
  • Fix panic on lockfile choice' source not in any deps (#300).
  • Remove git/ssh prompts behind progress bars (#310).

Changed

  • Adjust release flow to use cargo-dist (#292).
  • Modernize and improve error handling (#279).
  • Use shared clone for checkouts, dissociate on bender clone (#308).
  • installer: replace init with version-aware router (#285).
  • feat: filter export_include_dirs of excluded packages by default (#299).

Install bender 0.32.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/pulp-platform/bender/releases/download/v0.32.0/bender-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/pulp-platform/bender/releases/download/v0.32.0/bender-installer.ps1 | iex"

Download bender 0.32.0

File Platform Checksum
bender-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
bender-x86_64-apple-darwin.tar.xz Intel macOS checksum
bender-x86_64-pc-windows-msvc.zip x64 Windows checksum
bender-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
bender-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.31.0

Choose a tag to compare

@micprog micprog released this 03 Mar 16:50

0.31.0 - 2026-03-03

Fixed

  • Fix panic for untracked dependencies on update (#269).
  • Fix scripts for unknown file types in manifest (#270).
  • Fix upper bound for caret version requirements (#273).
  • Fix dependency fetching on update for unfetched versions/revisions (#274).
  • Fix vendor init patch application (#284).

Added

  • Add warning for untracked revision used for a dependency (#274).
  • Add --new-only flag to update to only update dependencies which are not yet fetched (#275).
  • Add ability to override files with same name (#267).
  • Add target filtering for include directories (#281).

Changed

  • Adjust script template json to support per-file comments (#267).
  • Only fetch needed dependencies (#276).
  • script: Invert source-annotations polarity, disabling by default (#280).

v0.30.0

Choose a tag to compare

@micprog micprog released this 12 Feb 12:32

0.30.0 - 2026-02-12

Added

  • Add warnings for nonexistent include directory and errors for missing path dependency (#229).
  • Add vlog-arg for synopsys scripts (#227).
  • Add flag for rtl target to files without target in script and sources (#186).
  • Add support for verilog/vhdl files with custom file endings in manifest (#207).
  • Add CI check for unused crates, cleanup (#242).
  • Add information for git version tags (#243).
  • Add pass_targets to dependencies to allow passing targets for hierarchical file filtering (not only global) (#235).
  • Add audit command to check for possible dependency updates (#236).
  • Add CLI script output regression tests (#245).
  • Add metadata to script output to assist with traceability (#244).
  • Add application of targets to only specific packages with a <PKG>:<TARGET> model for the target flag (#247).
  • Add target filtering for dependencies (#250).
  • Fixed symlink removal for windows (#252).
  • Add LFS support for dependencies (#259).
  • Add progress bars for git actions (#239, #262).

Fixed

  • Fix suppression of all warnings along with an error (#234).
  • Ensure sources output files are validated (#234).
  • Properly fail cloning for path dependencies (#225).
  • Fix symlink handling in windows (#252, #255).
  • Fix git authentification hangs (#261).

Changed

  • Change order of choice selection for conflicts on update (#237).
  • Refactor CLI, group flags, add aliases and support for env variables (#240).
  • Consolidate warnings, suppression and deduplication (#246).
  • Add default remotes to manifest to allow specifying multiple (default) remotes for dependencies, without having to write out the full git url every time (#260).

v0.29.1

Choose a tag to compare

@micprog micprog released this 24 Nov 13:27

0.29.1 - 2025-11-24

Fixed

  • Ensure informative print is not in stdout (e.g. fix for scripts)
  • Use write to stdout instead of print to enable piping bender output into another command
  • Remove compile warnings for release

Added

  • Add snapshot command to relink git version after working on a dependency with bender clone.

v0.29.0

Choose a tag to compare

@micprog micprog released this 13 Nov 09:58

0.29.0 - 2025-11-07

Fixed

  • script: Fix genus template.
  • Fix update failing pull of inexistent commit when multiple repositories are indicated.
  • Fix checkout for commit not yet fetched.
  • script: Fix flist-plus incdir template.
  • Throttle git commands to avoid git request failures.

Added

  • Add ARM64 binaries for releases
  • update: Update repositories in checkout dir if conditions match:
    • Folder is a git repository
    • Git state is clean
    • --ignore-checkout-dir flag to update IPs ignoring the state inside the checkout directory.
  • update: Tell user the lockfile version when solving a conflict.
  • Print dependency updates executed.
  • Enable updating of individual dependencies (and recursive dependencies if desired).
  • vendor: Add path error information.
  • Add support for glob in manifest source files.
  • parents: Print currently selected version.
  • packages: Add --version flag to print currently used versions.
  • packages: Add --targets flag to print targets used in the corresponding manifest.
  • Add clean command to clean all bender related dependencies.
  • script: Allow flist formats to use only-sources/only-includes/only-defines flags.
  • Add check to ensure files referenced in all manifests exist.
  • Add warnings for unknown fields in manifest.
  • sources: Add defines for passed targets to output (similar to script).
  • Add support to indicate and read in external file lists in manifest.
  • Enumerate warnings and add --suppress flag to hide warnings.

Changed

  • update: Clean up alignment of manual resolution output.
  • checkout: When using checkout_dir, overwrite existing dependencies if not changed, warning if not checked out, flag to force checkout.
  • update: Update checkout_dir if no internal changes.
  • Execute checkout instead of clone to checkout correct dependency versions when reasonable.
  • packages --graph: Clean up alignment of output.
  • script: No longer enforce all caps defines.

v0.28.2

Choose a tag to compare

@micprog micprog released this 31 Mar 14:53

Fixed

  • Put vcs, vsim, and riviera defines in quotes.
  • Fix genus script initialization.
  • Update Readme with for script formats.
  • Fix vendor file mappings when combining into a single directory.
  • Make panic an error when lockfile is not up to date with dependencies.
  • Fix Readme dependency version indication for exact match.
  • Fix vendor file copying for symbolic links.
  • Fix synopsys script include paths.
  • Fix checkout when system forces git signatures.

Added

  • Add completion command to generate shell autocomplete integration.
  • Add abort on error for vcs script type.
  • Add warning to update command when using overrides.
  • Add support for branchless commits in dependency repositories.

Changed

  • Bump dependencies.

v0.28.1

Choose a tag to compare

@micprog micprog released this 22 Feb 15:39

Added

  • Add flist-plus script format for file list with plusargs.

Fixed

  • Ensure defines/includes/sources are included in script when specifying multiple --only-*.

Changed

  • For bender clone: Add a relative path to the lockfile to align to change in v0.27.0.

v0.28.0

Choose a tag to compare

@micprog micprog released this 19 Jan 17:30

Added

  • Add macOS binary for releases
  • Add init command to initialize a Bender.yml file of an IP.
  • Allow environment variables in dependency and sources paths.
  • Add windows binary and compatibility for release.

Fixed

  • Documentation and Error Message fixes.

Changed

  • Complete revamp of script generation, now using templates. Script formats are homogenized and custom templates are enabled.

v0.27.4

Choose a tag to compare

@micprog micprog released this 14 Nov 11:56

Added

  • Add clearer error message when commits are no longer available upstream.
  • Improve Readme git explanation

Fixed

  • Fix CI GNU release.