Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-maturin for openSUSE:Factory checked in at 2023-11-07 21:25:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-maturin (Old) and /work/SRC/openSUSE:Factory/.python-maturin.new.17445 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-maturin" Tue Nov 7 21:25:09 2023 rev:34 rq:1123696 version:1.3.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-maturin/python-maturin.changes 2023-10-10 20:52:20.156761120 +0200 +++ /work/SRC/openSUSE:Factory/.python-maturin.new.17445/python-maturin.changes 2023-11-07 21:25:13.064993225 +0100 @@ -1,0 +2,23 @@ +Mon Nov 6 23:39:36 UTC 2023 - Mia Herkt <m...@0x0.st> + +- Update to 1.3.1 + * Use external uniffi-bindgen if no root package is configured + gh#PyO3/maturin#1797 + * Add trusted publishing section to the user guide + gh#PyO3/maturin#1800 + * Fix wheel filename for GraalPy + gh#PyO3/maturin#1802 + * Pytest skeleton in mixed template + gh#PyO3/maturin#1807 + * Keep trailing newlines from templates + gh#PyO3/maturin#1808 + * Bump rustix from 0.37.23 to 0.37.25 + gh#PyO3/maturin#1809 + * Auto detect Python 3.13 + gh#PyO3/maturin#1810 + * Fix missing workspace.members in sdist + gh#PyO3/maturin#1811 + * Don't set MACOSX_DEPLOYMENT_TARGET for editable builds + gh#PyO3/maturin#1815 + +------------------------------------------------------------------- Old: ---- maturin-1.3.0.tar.gz New: ---- maturin-1.3.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-maturin.spec ++++++ --- /var/tmp/diff_new_pack.5uUJlc/_old 2023-11-07 21:25:14.749055239 +0100 +++ /var/tmp/diff_new_pack.5uUJlc/_new 2023-11-07 21:25:14.749055239 +0100 @@ -18,7 +18,7 @@ %{?sle15_python_module_pythons} Name: python-maturin -Version: 1.3.0 +Version: 1.3.1 Release: 0 Summary: Rust/Python Interoperability License: Apache-2.0 OR MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.5uUJlc/_old 2023-11-07 21:25:14.777056270 +0100 +++ /var/tmp/diff_new_pack.5uUJlc/_new 2023-11-07 21:25:14.777056270 +0100 @@ -1,9 +1,9 @@ <services> - <service name="cargo_vendor" mode="disabled"> + <service name="cargo_vendor" mode="manual"> <param name="srcdir">maturin</param> <param name="compression">xz</param> <param name="update">true</param> </service> - <service name="cargo_audit" mode="disabled"></service> + <service name="cargo_audit" mode="manual"></service> </services> ++++++ maturin-1.3.0.tar.gz -> maturin-1.3.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/.pre-commit-config.yaml new/maturin-1.3.1/.pre-commit-config.yaml --- old/maturin-1.3.0/.pre-commit-config.yaml 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/.pre-commit-config.yaml 2023-10-24 15:26:02.000000000 +0200 @@ -38,7 +38,7 @@ types: [rust] stages: [manual] # because it's slow - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.4.0 + rev: v4.5.0 hooks: - id: check-yaml - id: check-toml @@ -56,20 +56,20 @@ ) - id: mixed-line-ending - repo: https://github.com/psf/black - rev: 23.9.1 + rev: 23.10.0 hooks: - id: black - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.0.291 + rev: v0.1.1 hooks: - id: ruff - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.5.1 + rev: v1.6.1 hooks: - id: mypy entry: mypy maturin/ pass_filenames: false - repo: https://github.com/codespell-project/codespell - rev: v2.2.5 + rev: v2.2.6 hooks: - id: codespell diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/Cargo.lock new/maturin-1.3.1/Cargo.lock --- old/maturin-1.3.0/Cargo.lock 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/Cargo.lock 2023-10-24 15:26:02.000000000 +0200 @@ -226,9 +226,9 @@ [[package]] name = "cargo-xwin" -version = "0.14.7" +version = "0.14.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a93406d2e8be2104cbcd9b9099ad11cf399c65102ecb0285d026a57aa1896bd" +checksum = "11c08ee57b16103990269874220c0e8a4613b8096a314ce2f29ad1b54d4b6d02" dependencies = [ "anyhow", "cargo-config2", @@ -1068,7 +1068,7 @@ [[package]] name = "maturin" -version = "1.3.0" +version = "1.3.1" dependencies = [ "anyhow", "base64 0.21.2", @@ -1170,9 +1170,9 @@ [[package]] name = "minijinja" -version = "1.0.6" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e436cdb19900a08197c6b874280d24f9289d127275eadc23623276e0f5ec97e9" +checksum = "80084fa3099f58b7afab51e5f92e24c2c2c68dcad26e96ad104bd6011570461d" dependencies = [ "serde", ] @@ -1696,9 +1696,9 @@ [[package]] name = "rustix" -version = "0.37.23" +version = "0.37.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06" +checksum = "d4eb579851244c2c03e7c24f501c3432bed80b8f720af1d6e5b0e0f01555a035" dependencies = [ "bitflags", "errno", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/Cargo.toml new/maturin-1.3.1/Cargo.toml --- old/maturin-1.3.0/Cargo.toml 1970-01-01 01:00:00.000000000 +0100 +++ new/maturin-1.3.1/Cargo.toml 1970-01-01 01:00:00.000000000 +0100 @@ -1,7 +1,7 @@ [package] authors = ["konstin <kons...@mailbox.org>", "messense <messe...@icloud.com>"] name = "maturin" -version = "1.3.0" +version = "1.3.1" description = "Build and publish crates with pyo3, rust-cpython and cffi bindings as well as rust binaries as python packages" exclude = [ "test-crates/**/*", @@ -90,7 +90,7 @@ # project scaffolding, maturin new/init/generate-ci dialoguer = { version = "0.10.2", default-features = false, optional = true } console = { version = "0.15.4", optional = true } -minijinja = { version = "1.0.0", optional = true } +minijinja = { version = "1.0.7", optional = true } # upload bytesize = { version = "1.0.1", optional = true } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/Changelog.md new/maturin-1.3.1/Changelog.md --- old/maturin-1.3.0/Changelog.md 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/Changelog.md 2023-10-24 15:26:02.000000000 +0200 @@ -7,6 +7,15 @@ ## [Unreleased] +## [1.3.1] - 2023-10-24 + +* Use external `uniffi-bindgen` if no root package is configured in [#1797](https://github.com/PyO3/maturin/pull/1797) +* Fix wheel filename for GraalPy in [#1802](https://github.com/PyO3/maturin/pull/1802) +* Add unittest skeleton to mixed Python/Rust projects in [#1807](https://github.com/PyO3/maturin/pull/1807) +* Preserve trailing whitespace in new project files in [#1808](https://github.com/PyO3/maturin/pull/1808) +* Fix missing `workspace.members` in sdist in [#1811](https://github.com/PyO3/maturin/pull/1811) +* Don't set `MACOSX_DEPLOYMENT_TARGET` for editable builds by default in [#1815](https://github.com/PyO3/maturin/pull/1815) + ## [1.3.0] - 2023-10-02 * Refactor Cargo sdist generator to avoid rewriting local dependencies in [#1741](https://github.com/PyO3/maturin/pull/1741) @@ -918,7 +927,8 @@ * Initial Release -[Unreleased]: https://github.com/pyo3/maturin/compare/v1.3.0...HEAD +[Unreleased]: https://github.com/pyo3/maturin/compare/v1.3.1...HEAD +[1.3.1]: https://github.com/pyo3/maturin/compare/v1.3.0...v1.3.1 [1.3.0]: https://github.com/pyo3/maturin/compare/v1.2.3...v1.3.0 [1.2.3]: https://github.com/pyo3/maturin/compare/v1.2.2...v1.2.3 [1.2.2]: https://github.com/pyo3/maturin/compare/v1.2.1...v1.2.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/PKG-INFO new/maturin-1.3.1/PKG-INFO --- old/maturin-1.3.0/PKG-INFO 1970-01-01 01:00:00.000000000 +0100 +++ new/maturin-1.3.1/PKG-INFO 1970-01-01 01:00:00.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: maturin -Version: 1.3.0 +Version: 1.3.1 Classifier: Topic :: Software Development :: Build Tools Classifier: Programming Language :: Rust Classifier: Programming Language :: Python :: Implementation :: CPython diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/src/auditwheel/audit.rs new/maturin-1.3.1/src/auditwheel/audit.rs --- old/maturin-1.3.0/src/auditwheel/audit.rs 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/src/auditwheel/audit.rs 2023-10-24 15:26:02.000000000 +0200 @@ -50,7 +50,7 @@ /// libraries with blacked-list symbols. #[error("Your library is not {0} compliant because it depends on black-listed symbols: {1:?}")] BlackListedSymbolsError(Policy, Vec<String>), - /// The elf file isn't manylinux/musllinux compaible. Contains unsupported architecture + /// The elf file isn't manylinux/musllinux compatible. Contains unsupported architecture #[error("Your library is not {0} compliant because it has unsupported architecture: {1}")] UnsupportedArchitecture(Policy, String), /// This platform tag isn't defined by auditwheel yet diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/src/compile.rs new/maturin-1.3.1/src/compile.rs --- old/maturin-1.3.0/src/compile.rs 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/src/compile.rs 2023-10-24 15:26:02.000000000 +0200 @@ -419,8 +419,8 @@ build_command.env("PYO3_CROSS_LIB_DIR", lib_dir); } - // Set default macOS deployment target version - if target.is_macos() && env::var_os("MACOSX_DEPLOYMENT_TARGET").is_none() { + // Set default macOS deployment target version for non-editable builds + if !context.editable && target.is_macos() && env::var_os("MACOSX_DEPLOYMENT_TARGET").is_none() { use crate::build_context::rustc_macosx_target_version; let target_config = context diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/src/module_writer.rs new/maturin-1.3.1/src/module_writer.rs --- old/maturin-1.3.0/src/module_writer.rs 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/src/module_writer.rs 2023-10-24 15:26:02.000000000 +0200 @@ -872,11 +872,14 @@ .no_deps() .verbose(true) .exec()?; - let root_pkg = cargo_metadata.root_package().unwrap(); + let root_pkg = cargo_metadata.root_package(); let has_uniffi_bindgen_target = root_pkg - .targets - .iter() - .any(|target| target.name == "uniffi-bindgen" && target.is_bin()); + .map(|pkg| { + pkg.targets + .iter() + .any(|target| target.name == "uniffi-bindgen" && target.is_bin()) + }) + .unwrap_or(false); let command = if has_uniffi_bindgen_target { let mut command = Command::new("cargo"); command.args(["run", "--bin", "uniffi-bindgen", "--manifest-path"]); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/src/new_project.rs new/maturin-1.3.1/src/new_project.rs --- old/maturin-1.3.0/src/new_project.rs 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/src/new_project.rs 2023-10-24 15:26:02.000000000 +0200 @@ -33,6 +33,7 @@ ) -> Result<Self> { let crate_name = project_name.replace('-', "_"); let mut env = Environment::new(); + env.set_keep_trailing_newline(true); env.add_template(".gitignore", include_str!("templates/.gitignore.j2"))?; env.add_template("Cargo.toml", include_str!("templates/Cargo.toml.j2"))?; env.add_template( @@ -43,6 +44,7 @@ env.add_template("main.rs", include_str!("templates/main.rs.j2"))?; env.add_template("build.rs", include_str!("templates/build.rs.j2"))?; env.add_template("__init__.py", include_str!("templates/__init__.py.j2"))?; + env.add_template("test_all.py", include_str!("templates/test_all.py.j2"))?; env.add_template("example.udl", include_str!("templates/example.udl.j2"))?; let bridge_model = match bindings.as_str() { @@ -86,6 +88,10 @@ fs::create_dir_all(&python_project)?; self.write_project_file(&python_project, "__init__.py")?; + let test_dir = python_dir.join("tests"); + fs::create_dir_all(&test_dir)?; + self.write_project_file(&test_dir, "test_all.py")?; + if src { project_path.join("rust") } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/src/python_interpreter/mod.rs new/maturin-1.3.1/src/python_interpreter/mod.rs --- old/maturin-1.3.0/src/python_interpreter/mod.rs 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/src/python_interpreter/mod.rs 2023-10-24 15:26:02.000000000 +0200 @@ -21,7 +21,7 @@ const GET_INTERPRETER_METADATA: &str = include_str!("get_interpreter_metadata.py"); pub const MINIMUM_PYTHON_MINOR: usize = 7; /// Be liberal here to include preview versions -pub const MAXIMUM_PYTHON_MINOR: usize = 12; +pub const MAXIMUM_PYTHON_MINOR: usize = 13; pub const MAXIMUM_PYPY_MINOR: usize = 10; /// Identifies conditions where we do not want to build wheels @@ -526,9 +526,9 @@ } InterpreterKind::GraalPy => { // GraalPy like PyPy uses its version as part of the ABI - // graalpy 3.10 23.1 => numpy-1.23.5-graalpy310-graalpy231_310_native_manylinux2014_x86_64.whl + // graalpy 3.10 23.1 => numpy-1.23.5-graalpy310-graalpy231_310_native-manylinux2014_x86_64.whl format!( - "graalpy{major}{minor}-{abi_tag}_{platform}", + "graalpy{major}{minor}-{abi_tag}-{platform}", major = self.major, minor = self.minor, abi_tag = calculate_abi_tag(&self.ext_suffix) @@ -989,19 +989,19 @@ let target = Target::from_target_triple(Some("x86_64-unknown-linux-gnu".to_string())).unwrap(); let pythons = PythonInterpreter::find_by_target(&target, None); - assert_eq!(pythons.len(), 10); + assert_eq!(pythons.len(), 11); let pythons = PythonInterpreter::find_by_target( &target, Some(&VersionSpecifiers::from_str(">=3.7").unwrap()), ); - assert_eq!(pythons.len(), 10); + assert_eq!(pythons.len(), 11); let pythons = PythonInterpreter::find_by_target( &target, Some(&VersionSpecifiers::from_str(">=3.10").unwrap()), ); - assert_eq!(pythons.len(), 4); + assert_eq!(pythons.len(), 5); } #[test] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/src/source_distribution.rs new/maturin-1.3.1/src/source_distribution.rs --- old/maturin-1.3.0/src/source_distribution.rs 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/src/source_distribution.rs 2023-10-24 15:26:02.000000000 +0200 @@ -64,7 +64,8 @@ let mut new_members = toml_edit::Array::new(); for member in members { if let toml_edit::Value::String(ref s) = member { - let path = Path::new(s.value()); + let member_path = s.value(); + let path = Path::new(member_path); if let Some(name) = path.file_name().and_then(|x| x.to_str()) { // See https://github.com/rust-lang/cargo/blob/0de91c89e6479016d0ed8719fdc2947044335b36/src/cargo/util/restricted_names.rs#L119-L122 let is_glob_pattern = name.contains(['*', '?', '[', ']']); @@ -78,11 +79,13 @@ .keys() .any(|path_dep| pattern.matches(path_dep)) { - new_members.push(s.value()); + new_members.push(member_path); } - } else if known_path_deps.contains_key(name) { - new_members.push(s.value()); + } else if known_path_deps.contains_key(member_path) { + new_members.push(member_path); } + } else if known_path_deps.contains_key(member_path) { + new_members.push(member_path); } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/src/templates/pyproject.toml.j2 new/maturin-1.3.1/src/templates/pyproject.toml.j2 --- old/maturin-1.3.0/src/templates/pyproject.toml.j2 2023-10-02 17:32:03.000000000 +0200 +++ new/maturin-1.3.1/src/templates/pyproject.toml.j2 2023-10-24 15:26:02.000000000 +0200 @@ -4,7 +4,7 @@ [project] name = "{{ name }}" -requires-python = ">=3.7" +requires-python = ">=3.8" classifiers = [ "Programming Language :: Rust", "Programming Language :: Python :: Implementation :: CPython", @@ -13,6 +13,12 @@ {% if bindings == "cffi" -%} dependencies = ["cffi"] {% endif -%} +{% if mixed_non_src -%} +[project.optional-dependencies] +tests = [ + "pytest", +] +{% endif -%} dynamic = ["version"] {% if bindings in ["bin", "cffi", "pyo3", "rust-cpython"] or mixed_non_src -%} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/maturin-1.3.0/src/templates/test_all.py.j2 new/maturin-1.3.1/src/templates/test_all.py.j2 --- old/maturin-1.3.0/src/templates/test_all.py.j2 1970-01-01 01:00:00.000000000 +0100 +++ new/maturin-1.3.1/src/templates/test_all.py.j2 2023-10-24 15:26:02.000000000 +0200 @@ -0,0 +1,6 @@ +import pytest +import {{ crate_name }} + + +def test_sum_as_string(): + assert {{ crate_name }}.sum_as_string(1, 1) == "2" ++++++ vendor.tar.xz ++++++ /work/SRC/openSUSE:Factory/python-maturin/vendor.tar.xz /work/SRC/openSUSE:Factory/.python-maturin.new.17445/vendor.tar.xz differ: char 25, line 1