Skip to content

Commit

Permalink
docs: show (new) info about 2.0 rewrite
Browse files Browse the repository at this point in the history
  • Loading branch information
robinvandernoord committed Apr 26, 2024
1 parent 3c79c5b commit e2fd52f
Showing 1 changed file with 10 additions and 9 deletions.
19 changes: 10 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,20 +22,21 @@ uvx

Run `uvx` without any arguments to see all possible subcommands.

## Note - pending replacement
## Note - Version 2.0 Now Available

Version `2.0.0` of uvx has been released and is now available. This new release has been rewritten in Rust to address performance concerns with the previous Python implementation, notably reducing startup time. Version `2.0.0` directly utilizes some APIs of `uv`, enhancing performance by avoiding the need to spawn a separate process in some cases.

Despite the availability of this new version, the repository and the existing Python implementation of uvx 1.x will continue to be maintained for bug fixes and to ensure (backwards) compatibility across different system architectures.

For users on supported Linux platforms with x86_64 (amd64) or aarch64 (ARM64) architectures, version 2.0 can be installed via pip or compiled manually from source if necessary. This version is not available through PyPI for other platforms, which can still utilize uvx 1.x or opt for manual compilation of uvx 2.0.

Discover more about the new features and enhancements by visiting the new project repository at [robinvandernoord/uvx2](https://github.com/robinvandernoord/uvx2/).

Although version `1.0.0` was recently released, work has already begun on version `2.0.0`, which is being developed
at [robinvandernoord/uvx2](https://github.com/robinvandernoord/uvx2/). The decision to undertake this new version is
driven by performance concerns with the current Python implementation, which has a startup time of 200ms. To address
this, `uvx 2.0` is being rewritten in Rust. This transition will enable `uvx` to utilize some of the APIs of `uv`
directly, without the need to spawn a separate process (in some cases), thus enhancing performance further.
Despite this rewrite, both the repository and the existing Python implementation will be maintained,
particularly for bug fixes, because it may have a larger (backwards) compatibility across system architectures.

## License

`uvx` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.

## Changelog

See `CHANGELOG.md` [on GitHub](https://github.com/robinvandernoord/uvx/blob/master/CHANGELOG.md)
See `CHANGELOG.md` [on GitHub](https://github.com/robinvandernoord/uvx/blob/master/CHANGELOG.md)

0 comments on commit e2fd52f

Please sign in to comment.