Skip to content

Releases: astral-sh/rye

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

0.4.0

29 May 10:11
Compare
Choose a tag to compare

What's Changed

  • Releases starting with 0.4.0 onwards are published with SHA256 checksum
    files for all release assets. These files are not yet validated by the
    installer or updater however.

  • The install command can now install tools from custom indexes. #240

  • Virtualenvs on Unix are now created with a hack to pre-configure TCL and
    TKinter. #233

  • Fix invalid version error when using rye init with custom toolchain. #234

  • Failed tool installations now properly clean up. #225

  • Correctly swap the rye executable on windows when performing an update
    to a git version via self update.

New Contributors

Full Changelog: 0.3.0...0.4.0

0.3.0

27 May 11:47
Compare
Choose a tag to compare

What's Changed

  • Support retrieving username and repository-url from credentials if not
    provided for the publish command. #217

  • The installer now validates the availability of shared libraries
    on Linux with ldd and emits an error with additional information
    if necessary shared libraries are missing. #220

  • It's now possible to configure http and https proxies. #215

  • If a package is not found because it only has matching pre-releases,
    a warning is now printed to tell the user to pass --pre. #218

  • Add --username parameter for rye publish. #211

  • The shims are now more resilient. Previously a pyproject.toml file
    caused in all cases a virtualenv to be created. Now this will only
    happen when the rye.tool.managed flag is set to true. The old
    behavior can be forced via the global config. #212

Full Changelog: 0.2.0...0.3.0