All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.24.0 - 2024-10-01
specifiers.txt
support
- Allow colons in tags
- Parse arguments with
urfave/cli
0.23.2 - 2024-08-17
- Partially resolved #157 by adding .tmp extension to incomplete downloads (#158)
0.23.1 - 2024-07-28
- Add colorlog detector (#146)
- Add a line break to the end of the output of
lip --version
0.23.0 - 2024-07-12
- Add version variable support for asset_url #134
0.22.0 - 2024-03-23
--no-color
flag to disable color output.- NSIS installer.
0.21.2 - 2024-02-21
- Some ambiguous error messages.
- Not prompting for confirmation to overwrite existing files when installing a tooth.
0.21.1 - 2024-02-17
- Untidy error messages.
- Failed to install any tooth without setting a proxy.
0.21.0 - 2024-02-17
- Proxy configuration support.
- Support more kinds of GitHub mirrors
- Support
NO_COLOR
environment variable to disable color output.
- Set
https://github.com
as the default GitHub mirror.
- Panic when dependencies and prerequisites have malformed version strings.
0.20.1 - 2024-02-04
- Version string.
0.20.0 - 2024-02-03
- Support Go module URL as asset URL.
- Files downloaded from GitHub mirror are now cached in different paths.
source
field intooth.json
.
0.19.0 - 2024-01-20
- Tons of debug logging.
- Show available versions without installing.
- Optimize error logging.
- Wildcard not parsing correctly.
- Wrong error output when "%" is used in messages.
- Wrong version
@0.0.0
when stringify specifiers without version.
0.18.1 - 2024-01-12
- Platform-specific items in tooth.json.
- Go module path escaping.
0.18.0 - 2024-01-12
- Config support.
- GitHub mirror support.
- Use
github.com/sirupsen/logrus
for logging. - Use
github.com/blang/semver/v4
for versioning. - Refactor most of the code.
- Remove
lip autoremove
command. - Percentage progress bar.
- Some bugs.
0.17.0 - 2023-12-30
- Warning for deprecated tooth.json format versions.
info.source
field for indicating the source repo of a tooth.
- Check tooth repo validity with Go official module library.
- Failed to uninstall a tooth when some of its files are already removed.
0.16.1 - 2023-10-11
- Unable to specify which version to install.
0.16.0 - 2023-10-09
- Prerequisite support.
- Failing to parse files under root directory of a tooth.
0.15.2 - 2023-09-05
- Inconsistent tooth.json schema with lipIndex.
- Wrong help messages.
0.15.1 - 2023-09-01
- Wrong help message for
--json
flag oflip show
command. - Wrong regex for validating versions.
0.15.0 - 2023-06-23
- Tooth file preservation and removal.
- Optimize output information format.
- Change tooth.json format to version 2.
- Force to specify output path in
lip tooth pack
command. - Refactor all code and optimize performance.
lip exec
command.- Tooth file possession (use "preserve" and "remove" instead).
- Number-only progress bar.
- Registry support.
- Placed files display in
lip show
command.
0.14.2 - 2023-04-24
- Remove misleading message when dependencies are satisfied.
- Packed tooth file not able to be installed.
0.14.1 - 2023-04-20
- Broken GOOS and GOARCH specifiers of placement.
0.14.0 - 2023-03-24
lip tooth pack
command to pack a tooth into a tooth file.- Questions when initializing a tooth.
- Not properly parsing placement sometimes.
- Not aborting when a tooth fails to install.
0.13.0 - 2023-03-05
- Aliases for subcommands.
- Tool should be registered in
tooth.json
manually now.
0.12.0 - 2023-02-27
- Dependency version validation when installing.
lip autoremove
command to remove teeth not required by other teeth.
- Failing to run tools with arguments.
- Dependencies still being installed when the dependent is not going to be installed.
0.11.45141 - 2023-02-19
- Wrongly showing debug information when redirecting to local lip.
0.11.4514 - 2023-02-17
- Showing information about installed teeth in
lip list
command.
0.11.0 - 2023-02-17
--available
flag forlip show
command.--numeric-progress
flag forlip install
command.--no-dependencies
flag forlip install
command.confirmation
field intooth.json
to show messages and ask for confirmation before installing.- Check for invalid additional arguments.
- Structured information output.
- Support for multiple GOPROXYs.
--keep-possession
flag forlip uninstall
command.- Automatic deletion of empty directories when uninstalling a tooth.
- Support for file possession.
- Remove wrongly displayed debug information.
- Failing to re-download when a broken tooth file exists in cache.
0.10.0 - 2023-02-12
- Verbose and quiet mode.
- JSON output support for
lip list
andlip show
.
0.9.0 - 2023-02-11
- HTTP Code reporting when failing to make a request.
lip list --upgradable
command.- Topological sorting for dependencies.
- Progress bar for downloading tooth files.
- No notice when a tooth file is cached.
- Tooth paths in
dependencies
field oftooth.json
not converting to lowercase. - Mistakes in help message of
lip cache purge
.
0.8.3 - 2023-02-09
- Mistakes in path prefix extraction when there is only one file in the tooth.
0.8.2 - 2023-02-09
- Failing to input anything to post-install and pre-uninstall commands.
- Wrong installation order of dependencies.
- Registry not working in
lip show
. - Unstable versions can be wrongly installed when no specific version is specified.
0.8.1 - 2023-02-07
- Failing to get information from registry with other index than index.json.
0.8.0 - 2023-02-06
- Registry support. The default registry is https://registry.litebds.com.
- Failing to uninstall teeth with uppercase letters in provided tooth path.
0.7.1 - 2023-02-05
- Failing to hot update or remove lip in local directory.
0.7.0 - 2023-02-01
- Support for installing anything to any path.
- Prompt for confirmation when installing to a path that is not in working directory.
0.6.0 - 2023-01-31
- Support for on-demand installation depending on OS and platform.
- Removal for downloaded tooth files that do not pass the validation.
0.5.1 - 2023-01-30
- Failing to install any tool.
0.5.0 - 2023-01-30
- Available version list in
lip show
command. - Redirection to local lip executable when running
lip
. - Support for pre-uninstall scripts.
- Support for hot update of lip.
- Support for executing tools in
.lip/tools
directory.
0.4.0 - 2023-01-26
- Post-install script support.
- Tooth path validation.
- Flexible tooth.json parsing.
0.3.4 - 2023-01-25
- Bumped github.com/fatih/color from 1.14.0 to 1.14.1.
- Misleading error hints.
- Failing to fetch tooth with major version v0 or v1.
- Failing to match dependencies.
- Failing to fetch tooth when uppercase letters exist in tooth path.
0.3.3 - 2023-01-24
- Default to earliest version when no version is specified in tooth.json.
- Panic when tooth.json is invalid.
0.3.2 - 2023-01-23
- "Add to PATH" option in setup utility.
- Mac OS, Linux and OpenBSD support.
- Arm64 support.
0.3.1 - 2023-01-21
- Setup utility to install lip.
0.3.0 - 2023-01-20
- Possession keeping support when force-reinstalling or upgrading.
--force-reinstall
flag and--upgrade
flag support.
0.2.1 - 2023-01-18
- Failing to fetch tooth whose version has suffix
+incompatible
. - Failing to parse wildcards.
0.2.0 - 2023-01-18
- Possession field in tooth.json to specify directory to remove when uninstalling a tooth.
- Change extension name of tooth files to .tth
- Fix failing to fetch tooth when the repository does not contain go.mod file.
- Fix failing to parse tooth file when the tooth is downloaded via GOPROXY.
- Fix failing to parse tooth when tooth.json is the only file in the tooth.
0.1.0 - 2023-01-17
- Basic functions: cache, install, list, show, tooth init, and uninstall.