Skip to content

Releases: genmeta/pishoo

v0.8.0-beta.6

v0.8.0-beta.6 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 18 Jul 04:26
bcd7613

pishoo v0.8.0-beta.6

Changed

  • Use dhttp as the default pishoo worker group on non-macOS systems while retaining _www on macOS; DEB and RPM installation hooks create the dhttp group when needed.
  • Publish pishoo-common from the same 0.8.0-beta.6 source version as pishoo. Linux packages render it as 0.8.0~beta.6-1, and pishoo accepts common-package versions from the last published 0.5.1-1 through the current version.

Fixed

  • Restore the identity profile db/access.db as the default access-policy source for identity services without an explicit access_rules directive.
  • Fall back to an empty policy only when the implicit database is genuinely absent; keep explicit, unreadable, corrupt, and invalid databases as service-preparation failures.

Components

  • pishoo v0.8.0-beta.6
  • gateway v0.8.0-beta.5 (unchanged)
  • pishoo-common v0.8.0-beta.6 (0.8.0~beta.6-1 in DEB/RPM repositories)

Release surfaces

  • Preview DEB, RPM, and Homebrew packages
  • GitHub prerelease and packaged release assets

Authentication and provenance

v0.8.0-beta.5

v0.8.0-beta.5 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Jul 09:44
4bafb74

pishoo v0.8.0-beta.5

Added

  • Build inherited per-account DHTTP home trees into a static reload service pipeline.

Changed

  • Use role-aware typed domains, sealed inherited trees, and typed compound STUN server values.
  • Enforce exhaustive immutable reload snapshots and transport contracts before worker activation.

Fixed

  • Preserve typed identity and registry contracts in cascaded and inherited configuration queries.
  • Redirect slash-directory proxy requests before fallback routing.
  • Compile IP-family parse failures cleanly with the release packaging nightly toolchain.

Dependencies

  • Use dhttp v0.6.0-beta.4, dyns v0.7.0-beta.2, h3x v0.6.0-beta.4, dquic v0.7.0-beta.4, and dshell v0.6.0-beta.3.

Components

  • gateway v0.8.0-beta.5
  • pishoo v0.8.0-beta.5
  • pishoo-common v0.5.1-1 (unchanged)

Authentication and provenance

v0.8.0-beta.4

v0.8.0-beta.4 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Jul 09:17
4ac01d3

pishoo v0.8.0-beta.4

Changes

  • pishoo keeps identity access-rule databases as live policy sources instead of loading only static in-memory snapshots.
  • Gateway and pishoo access checks evaluate rules through the shared dhttp access policy evaluator trait.
  • pishoo enables the dhttp access ORM facade feature for access-rule database evaluation.
  • Release workflows upload package assets from publish reports instead of broad local artifact globs.

Release surfaces

  • Product/package release: pishoo v0.8.0-beta.4 preview channel.
  • Rust workspace packages: gateway v0.8.0-beta.4, pishoo v0.8.0-beta.4.
  • Package manager surfaces: DEB/RPM and Homebrew preview.
  • Sidecar package: pishoo-common v0.5.1-1 remains unchanged.

Dependencies

  • dhttp v0.5.0-beta.3, dhttp-home v0.4.0-beta.1, dhttp-identity v0.3.0-beta.1, dyns v0.6.0-beta.3, h3x v0.6.0-beta.3, dshell v0.6.0-beta.2.
  • Release tooling: genmeta-xtask-release v0.2.0-beta.8.

Verification

  • cargo +nightly fmt -- --check
  • cargo test with temporary local patches for same-wave upstreams
  • cargo clippy --all-targets --all-features -- -D warnings with temporary local patches for same-wave upstreams

Registry gate

  • Final readiness requires same-wave upstream versions visible on crates.io and Cargo.lock regenerated without path-resolved upstream sources.

Authentication and provenance

v0.8.0-beta.3

v0.8.0-beta.3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 06 Jul 11:48
77a1611

pishoo v0.8.0-beta.3

Changes

  • Refresh release tooling so preview DEB/RPM metadata keeps the pishoo-common sidecar package required by preview pishoo packages.
  • Publish a beta.3 package metadata correction for the pishoo Linux package repositories.

Published packages

  • gateway v0.8.0-beta.3
  • pishoo v0.8.0-beta.3
  • pishoo-common v0.5.1-1

Authentication and provenance

v0.8.0-beta.2

v0.8.0-beta.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 06 Jul 10:37
1e1f35f

pishoo v0.8.0-beta.2

Changes

  • Load identity access rules from the identity profile access-rule database.
  • Refresh Linux packaging Zig/cargo-zigbuild tooling for DEB/RPM builds.
  • Update DHTTP stack dependency contracts for the beta.2 line.

Published packages

  • gateway v0.8.0-beta.2
  • pishoo v0.8.0-beta.2
  • pishoo-common v0.5.1-1

Authentication and provenance

v0.8.0-beta.1

v0.8.0-beta.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Jul 17:28
a5189a0

pishoo v0.8.0-beta.1

Changes

  • Prepare gateway and pishoo for the DHTTP beta dependency line.
  • Update pishoo package publishing to stable/preview-aware release destinations for DEB, RPM, and Homebrew.
  • Pin the shared release tooling through the reproducible genmeta-xtask-release release tag.

Fixes

  • Use the existing macOS _www group for default worker discovery instead of creating a pishoo group during Homebrew installation.
  • Check macOS worker group membership through platform membership APIs instead of bounded supplementary group lists.
  • Initialize worker process group state through the platform initgroups path.

Components

  • gateway v0.8.0-beta.1
  • pishoo v0.8.0-beta.1
  • pishoo-common v0.5.1-1

Release surfaces

  • DEB preview packages
  • RPM preview packages
  • Homebrew preview formula

Authentication and provenance

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 26 Jun 08:39
8e17d95

pishoo v0.7.0

This release updates pishoo and gateway for global dhttp home services, default group-based worker discovery, and the current DHTTP endpoint stack.

Added:

  • pishoo can load global services from the global dhttp home.
  • pishoo can discover default workers from the pishoo system group when explicit workers or groups are not configured.
  • Gateway config parsing resolves pishoo paths relative to the configuration file.
  • Release packaging now reads the pishoo package contract from xtask/release.toml, including target-local build environment overrides.

Changed:

  • Root-owned registered listeners now apply DHTTP endpoint defaults when constructing pishoo endpoints.
  • pishoo configuration now distinguishes standalone config-file mode from global dhttp-home mode.
  • Product package generation now uses the manifest-first package contract for DEB, RPM, Homebrew, and S3/R2 package metadata.
  • Homebrew package metadata uses the canonical dhttp download layout and emits versioned formula assets.

Fixed:

  • Worker dhttp homes and identity services are loaded through the dhttp home API instead of hard-coded home-directory paths.
  • Default pishoo group discovery is limited to global dhttp-home mode.
  • pishoo package installation creates or explains the pishoo group best-effort, and startup warns instead of failing when the default group is absent.
  • AArch64 GNU package builds filter the unsupported Zig/Rust linker mitigation flag.

Dependencies:

  • Release dependencies now target h3x 0.5.0, dhttp 0.4.0, dshell 0.5.0, dyns 0.5.0, and rankey 0.2.1.

Component versions:

  • gateway 0.7.0
  • pishoo 0.7.0
  • pishoo-common 0.5.1-1

Authentication and provenance

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 17 Jun 06:20
  • Route gateway and pishoo DHTTP integration through the dhttp endpoint facade, including endpoint-backed listeners, DHTTP DNS publication loops, and final crates.io release-wave dependencies.

  • Move pishoo SSH service handling to WebTransport DShell sessions over h3x IPC, replacing the legacy stream-oriented session path.

  • Add the span-aware gateway configuration parser, nginx-style proxy_pass URI rewriting, typed listen-scope validation, and safer static-file path handling.

  • Rework pishoo worker supervision around per-server runtimes, UID-keyed worker lifecycle, guarded listener/resource transitions, receiver-chosen FD transfer, and typed cleanup/failure paths.

  • Add manifest-first private release packaging for pishoo DEB, RPM, and Homebrew artifacts, including the pishoo-common release contract and S3/R2 publish idempotence.

  • pishoo DEB packages

  • pishoo RPM packages

  • pishoo Homebrew packages

  • gateway 0.6.0

  • pishoo 0.6.0

  • pishoo-common 0.5.0-1

  • h3x 0.4.0

  • dhttp 0.2.0

  • dyns 0.4.0

  • dshell 0.4.0

Authentication and provenance

gateway v0.5.0

Choose a tag to compare

@eareimu eareimu released this 20 Apr 15:39
601f7c1

[0.5.0] - 2026-04-20

Added

  • dhttp-home identity model: pishoo now adopts dhttp-home as the
    foundational identity abstraction. Each OS user owns a dhttp home
    that contains any number of identity homes, each holding one
    identity's TLS certificate/key, server configuration, and related
    assets. The gateway resolves services per identity home rather than
    consuming a single monolithic config.
  • Privilege-separated multi-process supervisor: motivated directly by
    dhttp-home, pishoo splits into a privileged root process and per-user
    worker processes. The root owns listeners, the PID file, and a
    server_name -> owner worker registry; each worker runs as its owning
    OS user and serves the identity homes that live in that user's dhttp
    home. This is what makes it correct to host many users' identities on
    one gateway without running business logic as root.
  • Standalone STUN server mode: new stun_server { bind / outer_addr / change_addr / change_port } directives for running RFC 5780 STUN
    endpoints inside a server block.
  • Access control plane: new access_rules sqlite://... directive
    backed by a SQLite ACL database, plus an HTTP configuration API for
    rule management.
  • Per-identity access logs: non-blocking writer producing structured
    access logs scoped to each identity.
  • Response compression: gzip, gzip_comp_level, gzip_min_length,
    gzip_vary, and gzip_types directives.
  • Header directives: proxy_set_header and add_header with variable
    interpolation ($host, $scheme, $http_*, $arg_*, $remote_addr).
  • Upstream TLS: configurable TLS to proxied upstreams.
  • SIGHUP-driven selective reload: listeners are reused where possible
    when only per-worker configuration changes.
  • xtask distribution tooling: cargo xtask replaces the shell /
    Makefile pipeline with parallel builds, shared cargo cache,
    dpkg-buildpackage + debhelper based .deb generation, Homebrew
    formula generation, and cross-compilation for amd64, arm64,
    armhf, i686, and macOS Apple Silicon / Intel.
  • README rewritten to document the new supervisor architecture and boot
    flow.

Changed

  • Switched to the h3x / dquic 0.2 line; forward and reverse data paths
    migrate to h3x TowerService, h3x::quic::Listen, and
    Arc<Connection> propagation for reduced per-request allocation.
  • TLS certificate/key resolution is delegated to dhttp-home Identity
    instead of ad-hoc file loading.
  • Forward proxy client certificate fields now refer to per-identity
    keychain paths.
  • DNS publishing now publishes empty records when no endpoints are
    available, clearing stale entries instead of leaving them.
  • STUN configuration: the STUN_SERVER environment variable is removed;
    the built-in default server is now nat.genmeta.net:20004 (was
    stun.genmeta.net:20002) and can be overridden via config.
  • Missing files on reverse-proxied paths return HTTP 404 instead of 500.
  • IPC between supervisor and workers uses a multiplexed channel
    transport.
  • Upgrade nix 0.30 → 0.31.

Removed

  • SSH3 password / basic authentication: ssh_login basic is no
    longer accepted; only ssh_login ssl (client-certificate
    authentication) is supported.
  • STUN_SERVER environment variable (use config instead).
  • Legacy Makefile / homebrew.sh / pishoo/pkg packaging artifacts
    (superseded by xtask).

Fixed

  • sshd: prevent lingering pishoo-ssh-session processes after client
    disconnect; register the conversation before returning 200 OK.
  • Pishoo: use SOCK_CLOEXEC fallback on macOS; close leaked seqpacket
    sockets; tolerate worker spawn failures without crashing the root.
  • DNS: spawn interface teardown in the background to prevent the
    reconcile loop from blocking on slow closes.

Dependencies

  • Pin all git dependencies to specific revisions (rev = "...") of the
    respective repositories' default branches to avoid accidental drift.
  • h3x is the only git dependency over https://; all others use
    ssh://.

v0.4.0

Choose a tag to compare

@eareimu eareimu released this 23 Sep 03:42
28851c3

pishoo & gateway 0.4.0

  • 结合acces对客户端进行认证
    • 支持ssl免密登录,将用户名加入path,同时保持对旧客户端的兼容性
  • 整理日志和错误汇报
  • 修复信号处理
  • 结合gm-quic 0.3的QuicListener进行并行DNS汇报

Full Changelog: v0.2.5...v0.4.0