🎉🎉 YAML typed manifest and archived manifest installation support 🎉🎉
-
Prompt for the new issue now has correct version in title in case of archived manifest is being downloaded/installed/...
-
Unix:
- Fix
--version
command under *nix - Supress errors about environment variables, until fully implemented.
- 🎉 Manifest installation on Unix is now partially implemented
- Fix
-
CI: Support validation of YML typed manifests
-
Cache the arm check to prevent multiple calls of
uname
on *nix -
scoop-uninstall: Warn user when he tries to uninstall dependency, which is still needed
-
scoop-status:
- Properly support yml typed manifests and dependencies
- Detect if applications, which were installed as dependency are still needed
-
scoop-list:
- Fix detection of installed status for PowerShell 5
- Show if application was installed as dependency
- If it was installed as dependency, the parent application will be shown as
{application}
in blue
- If it was installed as dependency, the parent application will be shown as
-
Adopt new resolve function for parameter passing
- scoop-install
- scoop-depends
-
Refactor dependencies handling
-
scoop-depends
: Adds
,--skip-installed
parameter- By default all dependencies are shown (including installed)
- Use this parameter to not include already installed dependencies in list
-
Support YML manifests
-
depends
property now can consist of following:depends: - yarn # Simple lookup from local buckets (supported before) - Base/yarn # Simple lookup from specific local bucket (supported before) - yarn@1 # Lookup from local buckets using specific version - Base/yarn@1 # Lookup from specific local bucket using specific version - https://raw.githubusercontent.com/User/Repo/main/bucket/alfa.yml # Any URL, which is valid manifest - https://raw.githubusercontent.com/User/Repo/main/bucket/alfabeta.json # Any URL, which is valid manifest - E:/Install/Shovel/customManifest.yml # Even local manifest support. Use with caution in controlled environment!
-
-
scoop-virustotal:
- Rename parameter
no-depends
(-n
) toindependent
(-i
) for consistency with other commands - Adopt
Resolve-ManifestObject
to support remote manifests/local manifests/archived manifests lookups - Yaml typed manifests, archived manifests, locally generated manfiests are also supported
nightly
versions are skipped and user is warned
- Rename parameter
-
Consider debug mode enabled only when the
debug
config option orSCOOP_DEBUG
is valid boolean value ($true
,$false
,1
,0
,true
,false
)- Prevent multiple evaluations of debug mode check
-
Respect
NO_JUNCTIONS
config when resolving helper utilities- Fallback to executable from PATH when the utility is not installed via scoop.
- scoop-config:
- Consider lessmsi as default for msi extraction
- Add config option
dbgBypassArmCheck
- Installation will not fail when installing arm64 version on x86.
- For debugging purpose, to simulate the installation of arm64 version
- Internal modules/libs are loaded only when not loaded already
- scoop-install: Fix independent installations
- Initial support for manipulation with
arm64
based manifests - Update: Application will not be updated, if manifest does not support architecture used for installation
- Checkver: URL ping behaviour equality with
dl
function - Add
Base
bucket to known- It will be automatically added when
update
command is executed
- It will be automatically added when
- scoop-checkup: Do not suggest 7zip installation when
7ZIPEXTRACT_USE_EXTERNAL
is configured - scoop-search:
- Do not fail when parsing invalid local manifest
- Support
githubToken
config andGITHUB_TOKEN
environment variable for Github API calls
- scoop-install, scoop-update: Report failed installations/updates at the end of execution
- Schema:
- Fix validation for curly bracket variables in autoupdate
- Initial support for
arm64
architecture - Allow
$schema
property
- CI:
- Files with multiple empty lines at the end now produce error
UTF8-Bom
,UTF16 BE
,UTF16 LE
files are prohibited- Support basic validation of yml typed manifests
- Support validation of all archived manifests
- scoop-cat: Add
-f
,--format
options - Adopt new resolve function for parameter passing
- scoop-search
- scoop-home
- scoop-cat
- scoop-download
- Checkver: Stabilize substitutions resolve
- i.e:
$urlNoExt
sometimes was faulty resolved as${url}NoExt
- i.e:
- Add additional debug for jsonpath/xpath evaluation
- scoop-bucket: Fix edge case when there are no buckets added
- Unify help entries of executables
- scoop-info:
- Support passing
--arch
and-a
options - Fix env_add_path rendering
- Support passing
- scoop-alias: List subcommand now indicates if executable is no longer available
- scoop-list: Do not show error when summary is empty
- scoop-utils: Use correct name of
checkurls
utility - Completion: Respect
SCOOP_CACHE
environment forcache rm
completion - scoop-cache: Allow multiple apps to be passed as argument
- scoop-(un)hold: Detect and show error when global option is missing for globally installed application
- Core: Use
Legacy
command argument passing - Autoupdate: Archive old versions of manifest when executing checkver/autoupdate
- Git: Always use
--no-pager
option - scoop-checkup: Test Windows Defender exlusions only when executed with administrator privileges
- Remove automatic config migration
- Config: Do not support
rootPath
,globalPath
,cachePath
config options - checkver:
- Prevent hitting GitHub rate limits
- GitHub checkver will use
api.github.com/repos
and github token from environment variableGITHUB_TOKEN
or config optiongithubToken
- GitHub checkver will use
- Properly reflect execution issues with exit code
- Prevent hitting GitHub rate limits
- scoop-search: Fix search without parameter provided
- New command
utils
added - Native parameter binding for aliases works again
- Git: Fix proxy handling
- Psmodules: Add global modules to path only if module is being installed globally
- Decompress: Support
INNOSETUP_USE_INNOEXTRACT
config option andExpand-InnoArchive -UseInnoextract
- format: Extract checkver fixes into own function and add generic adjust property function
- Schema
- Add
disable
property tocheckver
andautoupdate
-Force
will ignore this property
- Remove deprecated short properties
- Cleanup descriptions
- Add
- Remove deprecated functions from code-base
- binaries: Indicate binary execution errors with exit codes
- Git operations with custom wrapper are now executable under Unix-like systems
- auto-pr
- Use
main
branch instead ofmaster
ifremotes/origin/main
exists - Require
-Upstream
only when-Request
is provided - Scoop proxy configuration will be used for git calls
- Call native
git
command instead ofhub
for push operation - Refactor all git/hub calls to use
-C
option
- Use
- scoop-checkup:
- Check for main branches adoption (if supported)
- Check for full shovel adoption
- scoop-alias: First alias addition is correctly registered and created
- Autoupdate: Do not autoupdate unless URL is accessible after successful hash extraction
- Support YAML typed manifests in some commands
- scoop-virustotal: Command now works again with V3 API
- Requires Api key for all operations
- Decompress: Add
Expand-ZstdArchive
function for extracting standalone zstd archives - scoop-install:
- Allow modules to be installed globally
- Prevent repeated installation of same manifest/url/local file
- binaries: Support YAML typed manifests
- General code cleanup and code documentation tweaks
- scoop-install
- Remove mutually exclusivity of
installer.script
andinstaller.file
script
property is executed afterfile
- Fix
installer.file
exit code from ps1 scripts - Fix
installer.keep
inconsitency between powershell scripts and executables
- Remove mutually exclusivity of
- scoop-install: Fix installlation of different/older versions
- scoop-info: Respect
NO_JUNCTIONS
config - Add changelog to repository
- Autoupdate: Initial preparations for array support
- Manifest:
- Introduce manifest helpers to avoid repeating lines in manifests
Assert-Administrator
,Assert-WindowsMinimalVersion
,Assert-ScoopConfigValue
,Test-Persistence
,Edit-File
,Remove-AppDirItem
,New-JavaShortcutWrapper
- See ManifestHelpers "module" for possible parameters
- Present
pre_download
property - Add
changelog
property- It will be shown on manifest installation/updates and
scoop info
output
- It will be shown on manifest installation/updates and
- Introduce manifest helpers to avoid repeating lines in manifests
- scoop-alias: Add
path
andedit
subcommands - Completion: Correctly support
&&
and||
- scoop-(un)hold: Support
--global
parameter - Persist: Pre-create nested directories
- Autoupdate: Support base64 for all extraction types
- Small code cleanup and refactorings
- Update: Ignore merge commits in update log
scoop --version
reports PowerShell version- Depends: Correctly detect globally installed dependencies while resolving script dependencies
- scoop-bucket:
- Indicate successful bucket removal
- Indicate inability of bucket removal
- Sync with
upstream/master
scoop search
reimplemented- scoop-config: Fix regression from
--help
addition - Decompress: Fix 7zip requirements detection
- Autoupdate: Added
$headVersion
and$tailVersion
substitutes
- Allow
-h
and--help
parameters for all scoop commands - Lots of refactorings
abort
function completely eliminated- One failed manifest installation/update/download/... will not cause whole command to exit prematurelly
- lint: Code fixes
- Always return correct exit code from
.ps1
shim - Support spaces in shim paths
- Fix error in case of no aliases defined while running
scoop alias list
- Clink completion
- PowerShell completion fixes
- Virustotal application completion
- Lint
- Fosshub downloads hotfix
- Licensed under
GPL-3.0-only
scoop cat
scoop download
scoop config show
scoop hold|unhold --global
supportscoop info
: Handle architecture specificenv_set
andenv_add_path
scoop uninstall|update
: Shows PIDs of running process blocking uninstallationscoop list
: Addedreverse
,installed
,updated
optionsscoop config
: All supported configuration options are listed in help
formatjson
: Sort properties and do some automatic fixes for consistent format of manifests
pre|post_uninstaller
properties addedversion
,description
,homepage
,license
properties are required
- Native shell (tab) completion for PowerShell
- License is shown on installation/update
- Source bucket of manifest is always shown on installation
- Git operations no longer change user context
- Nongit buckets are not updated == invalid repository error will not be shown
- Update log will not show commits with
[scoop skip]
or[shovel skip]
in title - Refactored handling of manifests versions
- Exit codes are handled in a saner way
- See
scoop --help
for used exit codes
- See
- Internal application files do not use generic name
install.json
->scoop-install.json
manifest.json
->scoop-manifest.json
- System bitness is determined by integer pointer size
- This allows to install 32bit applications automatically from 32bit shell
- Code cleanup
- Scoop is no longer called externally in codebase
- "Better" Linux support
- Curly brackets substitution support
- Additional variable debugging
- Pages are now saved into files when debug is enabled