Skip to content

Releases: astral-sh/rye

0.14.0

01 Oct 21:27
Compare
Choose a tag to compare

What's Changed

  • Add support for fetching alternative CPU architectures. #447

  • The order of git submodule initialization was changed. This improves the
    automatic author detection when includeIf is used. #443

  • The linux shim installer code will no longer fall back to symlinks when a
    hardlink cannot be created. This is done as a symlinked shim will not
    ever function correctly on Linux. This prevents the shim executables like
    python to instead act as if they are rye. The fallback behavior is now
    to copy the executable instead. #441

  • The installer now detects fish and will spit out additional instructions
    for configuring the shell.

  • Fix the wrong behavior when bump version. #454

New Contributors

Full Changelog: 0.13.0...0.14.0

0.13.0

29 Aug 17:53
Compare
Choose a tag to compare

What's Changed

  • Add a python3 shim on windows. Previously entering python3 in the
    command line would always bring up the windows store python proxy even
    when global shims were enabled. As virtualenvs do not support the
    python3 executable on windows, the internal shim handling is now also
    changed so that trying to launch python3 will fall back to python.
    This makes it possible to run maturin build.

  • Add maturin build command to start a new maturin PyO3 project.

Full Changelog: 0.12.0...0.13.0

0.12.0

27 Aug 12:26
Compare
Choose a tag to compare

What's Changed

  • Improve handling of the pth files for TCL on pypy. #409

  • The rye tools list command now accepts -v to also print out the
    versions of the installed tools. #396

  • Fixed parsing of versions by rye version. #397

  • Improved the help message for rye init. #401

  • The email address now defaults to a syntactically valid email address
    if not known to prevent errors with some build tools.

  • Added new Python versions.

  • The rye installer now detects NOEXEC temporary folders and prints out
    a more helpful error message. #394

  • Fixed an issue where the author email was incorrectly detected. #382

  • The prompt of new virtualenvs is now set to the project name. #383

New Contributors

Full Changelog: 0.11.0...0.12.0

0.11.0

18 Jul 20:01
Compare
Choose a tag to compare

What's Changed

  • Added a new config key default.author to configure the default author
    that should be set. This overrides the default author that is normally
    loaded from the git config. #377

  • When importing with rye init and no src folder exists, it will not be
    crated. #375

  • Added support for shell command on Windows. #363

  • Pin down pip to an older version to avoid issues with an incompatible
    pip-tools version. This does not yet update pip-tools to 7.0 as there
    are significant regressions in 7.x. #374

  • The version command can show dynamic versions now. #355

  • rye add now properly checks some incompatible argument combinations. #347

  • There is now more toolchain validation. This better supports cases where
    rye was interrupted during sync. #351

New Contributors

Full Changelog: 0.10.0...0.11.0

0.10.0

07 Jul 14:09
Compare
Choose a tag to compare

What's Changed

  • Fixed a bug with rye init not operating correctly due to a argument conflict. #346

  • Scripts now support a PDM style call script type. #345

  • The init command is now capable of importing existing projects. #265

  • Fixed the global shim behavior on Windows. #344

New Contributors

Full Changelog: 0.9.0...0.10.0

0.9.0

21 Jun 12:43
Compare
Choose a tag to compare

What's Changed

  • The internal Rye Python version is now 3.11.

  • Rye now emits most messages, most of the time to stdout rather than stderr. #342

  • rye add now accepts --pin to let one override the type of pin to use. #341

  • Added rye config to read and manipulate the config.toml file. #339

  • Added support for the new behavior.global-python flag which turns on global
    Python shimming. When enabled then the python shim works even outside of
    Rye managed projects. Additionally the shim (when run outside of Rye managed
    projects) supports a special first parameter +VERSION which requests a
    specific version of Python (eg: python +3.8 to request Python 3.8). #336

  • Renamed the config key default.dependency_operator to default.dependency-operator
    and behavior.force_rye_managed to behavior.force-rye-managed. #338

Full Changelog: 0.8.0...0.9.0

0.8.0

18 Jun 14:49
Compare
Choose a tag to compare

What's Changed

  • Rye for now prefers >= over ~= for newly added dependencies.

  • The workspace member declaration is now platform independent. If members is
    now explicitly set to an empty list it will not fall back to auto discovery. #331

  • rye add now pins versions with == instead of ~= when the version of the
    package does not use at least two components. This means that for instance it
    will now correctly use openai-whisper==20230314 rather than
    openai-whisper~=20230314 which is not actually satisfiable. #328

  • rye install now lets you install dependencies into the tool's virtualenv
    during installation that are undeclared via the new --extra-requirement
    option. #326

  • Improved handling of relative path installations by setting PROJECT_ROOT
    the same way as PDM does. #321

  • Workspaces will now never discover pyproject.toml files in any dot
    directories. (Name starting with .) #329

  • Fixed rye build not working correctly on Windows. #327

Full Changelog: 0.7.0...0.8.0

0.7.0

12 Jun 16:40
Compare
Choose a tag to compare

What's Changed

  • rye sync and rye lock now accept --pyproject. #296

  • Added JSON output to rye toolchain list by adding --format=json. #306

  • rye version can bump version by --bump option now. #298

  • Fixed members not handled correctly in workspaces. #300

  • Add --clean for build command. #297

  • Fixed an issue where pip was not invoked from the right working directory
    causing issues for workspace installations. #292

  • rye init now accepts --private to set the Private :: Do Not Upload classifier
    that prevents uploads to PyPI. #291

New Contributors

  • @dsp made their first contribution in #292

Full Changelog: 0.6.0...0.7.0

0.6.0

03 Jun 09:11
Compare
Choose a tag to compare

What's Changed

  • Add version subcommand for rye. #285

  • Fixed rye pin pinning the wrong version. #288

  • Calling rye init on the root directory no longer fails. #274

New Contributors

Full Changelog: 0.5.0...0.6.0

0.5.0

31 May 12:57
Compare
Choose a tag to compare

What's Changed

  • Rye will no longer enforce a downloaded interpreter for the internal
    toolchain. If one has been registered that is compatible it will be
    used. Additionally the installer now supports the RYE_TOOLCHAIN
    environment variable which allows a user to supply an already existing
    Python interpreter at install time. #267

  • The publish command now supports --yes to disable prompts. #270

  • When a Python debug build (Py_DEBUG) is registered as custom toolchain,
    -dbg is automatically appended to the name by default. #269

  • lto+pgo builds are now preferred for the Python toolchain builds when
    available. #268

  • It's now possible for .python-version to request partial Python versions
    in which case the latest available is used. In particular this means that
    a version like 3.10 can be written into .python-version rather than
    3.10.11. This can be accomplished by invoking pin with the new
    --relaxed flag. #255

  • Workspaces will no longer discover pyproject.toml files in virtualenvs
    or .git folders. #266

  • Adding or removing dependencies with add or remove now reformats
    the dependencies array in the pyproject.toml file to multi-line
    with trailing commas. This should result in significantly better
    diffing behavior out of the box. #263

  • Default build-system and license can be specified in global config. #244

  • Fixed an issue where the init command would not let you create
    flit based projects. #254

  • Resolve an error ("No such file or directory") shown after updates on
    Linux machines. #252

  • The built-in updater now validates checksums of updates when updates have
    SHA-256 hashes available. #253

  • init now accepts --no-pin to not create a .python-version file. #247

New Contributors

Full Changelog: 0.4.0...0.5.0