head	1.1;
access;
symbols;
locks; strict;
comment	@# @;


1.1
date	2026.06.11.15.19.44;	author drixter;	state Exp;
branches;
next	;
commitid	4YcevhEkansKroJG;


desc
@@


1.1
log
@shells/brush-shell: Update to v0.4.0

Some key highlights:

A meaningful step forward in bash compatibility.
Major bash language features are now implemented or substantially expanded,
e.g.: set -e, set -u, pipefail, failglob, the ERR trap, coprocesses, and a great deal more.
Improved robustness across edge cases.
Closed pipes, broken stdout, unusual file-descriptor states, non-UTF8 history files,
and platform corner cases are now handled gracefully.
A systematic audit also removed an entire class of avoidable failure modes.
Broader platform support. Using brush as a login shell on macOS is now supported,
Windows path handling is overhauled, FreeBSD, Android and 32-bit targets build cleanly again,
and wasm32-wasip2 is now exercised in CI.
A more capable interactive shell. Optional TOML config,
zsh-style preexec/precmd hooks, experimental terminal integration,
expanded readline-macro support, and many completion improvements.
API improvements and foundations for what's next. Scaffolding for
a winnow-based parser, a generic Shell<Extensions> for embedders,
an opt-in bundled-coreutils build, and serde features for both AST and shell state.
This work has required breaking changes to API surface, mostly to brush-core.
Some changes were also made to brush-parser's API but we expect migration for
parser-only consumers to be straightforward and relatively minimal.
@
text
@# $NetBSD$

DISTNAME=	brush-shell-v0.4.0
PKGNAME=	${DISTNAME:S,-v,-,}
CATEGORIES=	shells
MASTER_SITES=	${MASTER_SITE_GITHUB:=reubeno/}
GITHUB_PROJECT=	brush
GITHUB_TAG=	${DISTNAME}

MAINTAINER=	drixter@@e-utp.net
HOMEPAGE=	https://github.com/reubeno/brush/
COMMENT=	POSIX- and bash-compatible shell written in Rust
LICENSE=	mit

RUST_REQ=	1.88.0
USE_TOOLS+=	pkg-config

INSTALLATION_DIRS=	bin

PKG_SHELL=	bin/brush

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/target/release/brush \
		${DESTDIR}${PREFIX}/bin

.include "cargo-depends.mk"

.include "../../lang/rust/cargo.mk"
.include "../../mk/bsd.pkg.mk"
@
