Skip to content

v0.1.0-beta.10

Choose a tag to compare

@github-actions github-actions released this 07 Oct 14:09
61c08d6

0.1.0-beta.10 (2026-10-07)

⚠ BREAKING CHANGES

  • libscoop: switch to use tracing for logging
  • libscoop: manifest.hash() return type changed from str to HashString
  • libscoop|config: Package::manifest_path is replaced by manifest().path().
  • libscoop: SyncOption::NoDownloadSize becomes SyncOption::Offline
  • libscoop: Some Event variants related to bucekt update progress have been updated to fit the latest codebase.
  • libscoop: Session::new() is now infallible.
  • libscoop: APIs of operations and Session changed.
  • libscoop: exposed modules of libscoop changed.

Features

  • add 'bagger alias', 'bagger export', 'bagger import' commands (9f4ae94)
  • add 'bagger checkup' command (232b63f)
  • add 'bagger checkver' command (a7acf9b)
  • add 'bagger create', 'bagger depends', 'bagger download' commands (0c19c45)
  • add 'bagger prefix' command (881f118)
  • add 'bagger reset' command (d458072)
  • add 'bagger shim' command (32c7967)
  • add 'bagger virustotal' command (simulation) (ba0cf67)
  • add 'bagger which' and 'bagger status' commands (604a164)
  • add 'bagger which' command (15e9332)
  • add hash crate (aa021fb)
  • add opt-in SQLite manifest cache for bucket queries (c760a2c)
  • alias persistence, shim rm alias, create bucket layout (b44da4c)
  • api: Introduce SPDX spec for manifest.license (ec5e1f5)
  • autoupdate extract/json/xpath hash modes per upstream (6dd62dc)
  • autoupdate site hash modes (fosshub/sourceforge/github/rdf) (bde66ce)
  • bucket-priority candidate auto-selection (24a036f)
  • cache: implement cache-rm (869f095)
  • checkver reverse/replace/captures with Scoop-faithful chaining (17510e6)
  • checkver script support, drop bogus cache-clean row (7817054)
  • cmd: Implement cleanup, refactor cache and list (3ca3f26)
  • cmd: Implement scoop list subcommand (0b2fdec)
  • cmd: prototype of scoop home (29c2663)
  • cmd: prototype of scoop info (a207465)
  • cmd: prototype of scoop search (local) (2c8e563)
  • complete autofetch hash rewriting for download mode (23ec43d)
  • core: add DepGraph implementation (ca5f49f)
  • core: Implement update subcommand (ad04e76)
  • evaluate checkver xpath via roxmltree subset evaluator (e1090a8)
  • export/import installed architecture, fix query_installed regression (94c1f94)
  • hash-md5: add reset api (3db7116)
  • hash: add checksum helper functions (df24980)
  • hash: add sha1 implementation (8bee89a)
  • hash: add sha256 implementation (37f9f62)
  • hash: add sha512 implementation (7bbecf1)
  • hash: provided a top-level checksum api (99fed09)
  • hok|cat,home: support candidate selection (28b56c5)
  • hok|cat: show manifest path (7e06467)
  • hok|config: config-list shows the path (679c177)
  • hok: add hok completions command to generate shell completion (da1b6d8)
  • hok: add global --verbose flag (5fd0505)
  • hok: add uninstall cmd placeholder (c13e8be)
  • hok: added s shortcut for search command (50c0bfc)
  • hok: reflect basic support of uninstalling packages (183cfd8)
  • hok: show bucket manifest count (d71e193)
  • hok: support list held packages (a2acb22)
  • hok: support resolving and downloading packages (bdc08dd)
  • honor checkver.useragent, quiet absent shim removals (7b326d5)
  • implement autofetch, runtime deps, running-process guard, real VirusTotal lookup (da6c760)
  • Implement basic file downloads (c5d303b)
  • implement hold and unhold (682c63c)
  • implement install commit step (85f4b09)
  • implement status (bb650d6)
  • install notes/suggestions, checkver jsonpath + arch fallback (5b7f1a7)
  • integrate aria2c downloader with curl fallback (fe79cc0)
  • libscoop|config: support SCOOP_CACHE and SCOOP_GLOBAL envs (cf2a2a5)
  • libscoop|config: support use_isolated_path config (1bb5ee7)
  • libscoop|download: support injecting cookie defined in manifest (aec7fdc)
  • libscoop|download: write to temp file in downloading (d79e598)
  • libscoop|event: added integrity check event and error type (888afbb)
  • libscoop|manifest: impl Display for License (e91ff0e)
  • libscoop|manifest: support aarch64 specific fields (639d092)
  • libscoop|resolve: added resolve_cascade (0aa0c52)
  • libscoop|resolve: added fn select_candidate (0e296ea)
  • libscoop|resolve: allow to select installed candidate (8fb0ec3)
  • libscoop|sync: added SyncOption::EscapeHold for package remove (ca8fad7)
  • libscoop|sync: basic support of uninstalling packages (b1f0f6b)
  • libscoop: add package resolving and event bus (434eebe)
  • libscoop: added coordination between AssumeYes and NoDownloadSize (5e9d578)
  • libscoop: added package integrity check logic (57869f7)
  • libscoop: added support for package resolution and download (4ff0d95)
  • libscoop: Adpot new cache filename format (15172a9)
  • libscoop: impl Default for Session (d91177a)
  • libscoop: remove env paths under isolated_path mode correctly (2f58173)
  • libscoop: replace ureq with libcurl (7d3df7c)
  • libscoop: scoop-hash features passthrough (cb027ce)
  • libscoop: support use_sqlite_cache config (35c9577)
  • libscoop: support loading config from all possible location (2bcc649)
  • make import actually install exported apps (7b0a9d5)
  • move to v0.1.0-alpha.2 (24e354a)
  • move to v0.1.0-alpha.3 (1ecd0ed)
  • move to v0.1.0-beta.1 (e1a2376)
  • runtime architecture override via --arch / SCOOP_ARCH (f348d48)
  • schema-compat hardening from upstream schema audit (6c5a72c)
  • scoop hook-scope prelude (Expand-* + vars); upstream install ordering; installer.file; native msi extraction (ebc968d)
  • scoop-cache: implement scoop cache show (ae018b8)
  • scoop-cache: implement scoop cache show (c584c90)
  • scoop-config: implement scoop config (9bdc9fa)
  • scoop-hash: support switching hashing backend (d38658e)
  • scoop-hash: use builder pattern (87ca347)
  • search: Add fuzzy search option (53c8998)
  • search: Implement binary search (26ff6f2)
  • support global installs via session root override (0aea883)
  • support isolated installs from manifest URLs and files (4231ab9)
  • update (cf505f0)
  • v0.1.0-alpha.1 (f304bb2)
  • verify archive/script/persist e2e, fix checkup broken-shim scan (79ba5eb)

Bug Fixes

  • bucket-rm: use remove_dir_all crate (a5c9a0b)
  • cargo clippy fix (71a7596)
  • ci: remove unneeded condition (718084f)
  • cleanup continues past locked versions; hardened persist unlink; running-process hint (7390360)
  • clippy warnings in checkup, import, create, depends (4121831)
  • core: fix cache regex (98f2a44)
  • core: fix manifest download urls extraction (7fef94c)
  • download -v collision, junction-aware reset (1bdc906)
  • download unknown-size skip, shim add/remove symmetry (f65b2c4)
  • drop unimplemented download --version flag (0687429)
  • Fix apps_in_local_bucket (b3170c7)
  • fix cache rm handler (22f51e2)
  • Fix not truncating previous data when saving new configs (ea4bf0c)
  • harden filesystem-name handling, drop dead downloader (dfec4f3)
  • hok|cat,home: sort candidates (c90f3f9)
  • hok|list: only print upgradable when the flag is used (558d9d3)
  • hok: accumulate downloaded bytes properly (d6fabc8)
  • hok: added long format arg of listing known buckets (658ef7d)
  • hok: Check if cat_style is empty (4ed662e), closes #10
  • hok: fix 50c0bfc (387fd66)
  • hok: print ending newline for error report (d1f5682)
  • hok: Remove type.exe dep in hok cat (47a42c5)
  • hok: trim yes_no prompt input (0a01f1e)
  • libscoop|config: correct no_junction field (4bae700)
  • libscoop|config: default config path should be always returned (d3040ad)
  • libscoop|config: support named use_isolated_path (5e9a181)
  • libscoop|fs: write_json should create file instead of dir (54482a7)
  • libscoop|fs: improve symlink removal logic (398ef27)
  • libscoop|query: don't create empty apps dir (7287bd5)
  • libscoop|resolve: correct pinned dependency cascade resolving (660d3e2)
  • libscoop: added portability on non-windows (3d1ffee)
  • libscoop: avoid forcing doc target as it will fail to build (7674f8a)
  • libscoop: case insensitive match on package querying (5efde66)
  • libscoop: dag should check self cyclic (a5bbb0b)
  • libscoop: emit BucketUpdateDone event despite zero bucket (dc4bdca)
  • libscoop: ensure cache dir exist before downloading (485255e)
  • libscoop: ensure ops working dir exist (0520ae8)
  • libscoop: fix doctest (c0237a2)
  • libscoop: handle wildcard query in upgrade operation (639e8c6)
  • libscoop: hash checking should be case insensitive (fix #18) (b3afbef)
  • libscoop: package resolving is infallible when OnlyUpgrade is used (cabd52b)
  • libscoop: set install state for package's upgradable reference (63a54f7)
  • libscoop: update crate categories metadata (8d6271d)
  • libscoop: update doc comments (bcd29b4)
  • libscoop: updated Config struct (17e474a)
  • libscoop: use upgradable package reference when available (9dfd93f)
  • report missing cache files clearly in integrity check (a893e3d)
  • scoop-hash: remove docsrs target (b6ddd19)
  • skip (don't abort) bulk transactions on running apps; upstream persist upgrade; shim exe poisoning + arg forwarding; 7z resolution (21ff95c)
  • stage downloads under real URL basenames; conservative cleanup; missing shim-target warnings; arch extract_to (d400c37)
  • typo (4ddc72f)
  • use init method to create config instance (9aa08ba)

Performance Improvements

  • don't update install info if it's not held (d8b71b1)
  • hash-md5: use inline fn for performance (7f35660)
  • libscoop|manifest: defer hash validation (d1ff3f6)
  • libscoop: 5x speedup on package querying (90a8815)
  • search enhancement (13075cc)

Miscellaneous Chores

  • libscoop: tweak exposed modules (f31cb64)

Code Refactoring

  • libscoop: switch to use tracing for logging (d835c7f)