diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 4667f4ee1..a03de5506 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -4,7 +4,7 @@ This document provides guidelines for working with GitHub Copilot when contribut ## Project Overview -RustPython is a Python 3 interpreter written in Rust, implementing Python 3.13.0+ compatibility. The project aims to provide: +RustPython is a Python 3 interpreter written in Rust, implementing Python 3.14.0+ compatibility. The project aims to provide: - A complete Python-3 environment entirely in Rust (not CPython bindings) - A clean implementation without compatibility hacks diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index b8263026d..7fc4c6531 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -115,7 +115,7 @@ env: test.test_multiprocessing_spawn.test_processes ENV_POLLUTING_TESTS_WINDOWS: >- # Python version targeted by the CI. - PYTHON_VERSION: "3.13.1" + PYTHON_VERSION: "3.14.2" X86_64_PC_WINDOWS_MSVC_OPENSSL_LIB_DIR: C:\Program Files\OpenSSL\lib\VC\x64\MD X86_64_PC_WINDOWS_MSVC_OPENSSL_INCLUDE_DIR: C:\Program Files\OpenSSL\include diff --git a/.github/workflows/cron-ci.yaml b/.github/workflows/cron-ci.yaml index d48c5e4cf..9d549602b 100644 --- a/.github/workflows/cron-ci.yaml +++ b/.github/workflows/cron-ci.yaml @@ -13,7 +13,7 @@ name: Periodic checks/tasks env: CARGO_ARGS: --no-default-features --features stdlib,importlib,encodings,ssl-rustls,jit - PYTHON_VERSION: "3.13.1" + PYTHON_VERSION: "3.14.2" jobs: # codecov collects code coverage data from the rust tests, python snippets and python test suite. diff --git a/.github/workflows/update-doc-db.yml b/.github/workflows/update-doc-db.yml index c580e7d0e..37cf56504 100644 --- a/.github/workflows/update-doc-db.yml +++ b/.github/workflows/update-doc-db.yml @@ -9,7 +9,7 @@ on: python-version: description: Target python version to generate doc db for type: string - default: "3.13.9" + default: "3.14.2" ref: description: Branch to commit to (leave empty for current branch) type: string diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index 82364e9b8..f515bef1a 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -25,7 +25,7 @@ RustPython requires the following: stable version: `rustup update stable` - If you do not have Rust installed, use [rustup](https://rustup.rs/) to do so. -- CPython version 3.13 or higher +- CPython version 3.14 or higher - CPython can be installed by your operating system's package manager, from the [Python website](https://www.python.org/downloads/), or using a third-party distribution, such as diff --git a/README.md b/README.md index b3ddbe4e7..c4f7bfb1d 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # [RustPython](https://rustpython.github.io/) -A Python-3 (CPython >= 3.13.0) Interpreter written in Rust :snake: :scream: +A Python-3 (CPython >= 3.14.0) Interpreter written in Rust :snake: :scream: :metal:. [![Build Status](https://github.com/RustPython/RustPython/workflows/CI/badge.svg)](https://github.com/RustPython/RustPython/actions?query=workflow%3ACI) diff --git a/crates/venvlauncher/src/main.rs b/crates/venvlauncher/src/main.rs index fe147ce7f..7087e791e 100644 --- a/crates/venvlauncher/src/main.rs +++ b/crates/venvlauncher/src/main.rs @@ -114,12 +114,12 @@ mod tests { let cfg_path = temp_dir.join("test_pyvenv.cfg"); let mut file = fs::File::create(&cfg_path).unwrap(); - writeln!(file, "home = C:\\Python313").unwrap(); + writeln!(file, "home = C:\\Python314").unwrap(); writeln!(file, "include-system-site-packages = false").unwrap(); - writeln!(file, "version = 3.13.0").unwrap(); + writeln!(file, "version = 3.14.0").unwrap(); let home = read_home(&cfg_path).unwrap(); - assert_eq!(home, "C:\\Python313"); + assert_eq!(home, "C:\\Python314"); fs::remove_file(&cfg_path).unwrap(); } diff --git a/crates/vm/src/version.rs b/crates/vm/src/version.rs index 2b5e82a8d..bd42341ef 100644 --- a/crates/vm/src/version.rs +++ b/crates/vm/src/version.rs @@ -4,9 +4,9 @@ use chrono::{Local, prelude::DateTime}; use core::time::Duration; use std::time::UNIX_EPOCH; -// = 3.13.0alpha +// = 3.14.0alpha pub const MAJOR: usize = 3; -pub const MINOR: usize = 13; +pub const MINOR: usize = 14; pub const MICRO: usize = 0; pub const RELEASELEVEL: &str = "alpha"; pub const RELEASELEVEL_N: usize = 0xA; diff --git a/crates/vm/src/vm/mod.rs b/crates/vm/src/vm/mod.rs index 8233df43a..27b70e321 100644 --- a/crates/vm/src/vm/mod.rs +++ b/crates/vm/src/vm/mod.rs @@ -523,7 +523,7 @@ impl VirtualMachine { /// ```no_run /// use rustpython_vm::Interpreter; /// Interpreter::without_stdlib(Default::default()).enter(|vm| { - /// let bytes = std::fs::read("__pycache__/.rustpython-313.pyc").unwrap(); + /// let bytes = std::fs::read("__pycache__/.rustpython-314.pyc").unwrap(); /// let main_scope = vm.new_scope_with_main().unwrap(); /// vm.run_pyc_bytes(&bytes, main_scope); /// }); diff --git a/whats_left.py b/whats_left.py index c5b0be6ea..3ae2d2c0f 100755 --- a/whats_left.py +++ b/whats_left.py @@ -1,6 +1,6 @@ #!/usr/bin/env -S python3 -I # /// script -# requires-python = ">=3.13" +# requires-python = ">=3.14" # /// # This script generates Lib/snippets/whats_left_data.py with these variables defined: @@ -37,9 +37,9 @@ GENERATED_FILE = "extra_tests/not_impl.py" implementation = platform.python_implementation() if implementation != "CPython": sys.exit(f"whats_left.py must be run under CPython, got {implementation} instead") -if sys.version_info[:2] < (3, 13): +if sys.version_info[:2] < (3, 14): sys.exit( - f"whats_left.py must be run under CPython 3.13 or newer, got {implementation} {sys.version} instead. If you have uv, try `uv run python -I whats_left.py` to select a proper Python interpreter easier." + f"whats_left.py must be run under CPython 3.14 or newer, got {implementation} {sys.version} instead. If you have uv, try `uv run python -I whats_left.py` to select a proper Python interpreter easier." )