Bug 2161739 - Review Request: rust-pyo3-log - Logging bridge from pyo3 native extension to python
Summary: Review Request: rust-pyo3-log - Logging bridge from pyo3 native extension to ...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Fabio Valentini
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2077333
TreeView+ depends on / blocked
 
Reported: 2023-01-17 18:20 UTC by Kai A. Hiller
Modified: 2023-03-11 03:08 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-02-21 15:55:51 UTC
Type: ---
Embargoed:
decathorpe: fedora-review+


Attachments (Terms of Use)

Description Kai A. Hiller 2023-01-17 18:20:07 UTC
Spec URL: https://v02460.fedorapeople.org/rust-pyo3-log.spec
SRPM URL: https://v02460.fedorapeople.org/rust-pyo3-log-0.7.0-3.fc38.src.rpm
Description: Logging bridge from pyo3 native extension to python
Fedora Account System Username: v02460

Comment 1 Jakub Kadlčík 2023-01-17 18:23:40 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/5240870
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2161739-rust-pyo3-log/fedora-rawhide-x86_64/05240870-rust-pyo3-log/builder-live.log.gz

Please make sure the package builds successfully at least for Fedora Rawhide.

- If the build failed for unrelated reasons (e.g. temporary network
  unavailability), please ignore it.
- If the build failed because of missing BuildRequires, please make sure they
  are listed in the "Depends On" field


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

Comment 2 Fabio Valentini 2023-02-04 13:34:53 UTC
Two quick comments:

> echo 'python3-devel'

This should not be necessary - pyo3 (via pyo3-ffi) should already pull in python3-devel.

There have also been new releases of the pyo3-log crate (v0.8.0 and v0.8.1), but it looks like matrix-synapse depends on v0.7, so I would continue with the review of v0.7.0 and only update to a later version once matrix-synapse requires it?

Comment 3 Kai A. Hiller 2023-02-09 19:30:47 UTC
That sounds good! And you are right – I removed the dependency on python3-devel.

New version:
Spec URL: https://v02460.fedorapeople.org/rust-pyo3-log.spec
SRPM URL: https://v02460.fedorapeople.org/rust-pyo3-log-0.7.0-4.fc38.src.rpm

Comment 4 Fabio Valentini 2023-02-15 22:41:54 UTC
Thanks, looks good to me now!

===

Package was generated with rust2rpm, simplifying the review.

- package builds and installs without errors on rawhide
- test suite is run and all unit tests pass
! latest version of the crate is packaged (we need 0.7.x right now)
- license matches upstream specification and is acceptable for Fedora
- license files are included with %license in %files
- package complies with Rust Packaging Guidelines

Package APPROVED.

===

Recommended post-import rust-sig tasks:

- add @rust-sig with "commit" access as package co-maintainer

- set bugzilla assignee overrides to @rust-sig (optional)

- set up package on release-monitoring.org:
  project: $crate
  homepage: https://crates.io/crates/$crate
  backend: crates.io
  version scheme: semantic
  version filter: alpha;beta;rc;pre
  distro: Fedora
  Package: rust-$crate

- enable tracking of the package in koschei for all relevant branches

Comment 5 Fedora Admin user for bugzilla script actions 2023-02-21 14:03:41 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/rust-pyo3-log

Comment 6 Fedora Update System 2023-02-21 14:36:50 UTC
FEDORA-2023-ea818e4902 has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2023-ea818e4902

Comment 7 Fedora Update System 2023-02-21 15:55:51 UTC
FEDORA-2023-ea818e4902 has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 8 Fedora Update System 2023-02-24 16:16:27 UTC
FEDORA-2023-2dedbef650 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2023-2dedbef650

Comment 9 Fedora Update System 2023-02-24 16:38:45 UTC
FEDORA-2023-08e065d25d has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2023-08e065d25d

Comment 10 Fedora Update System 2023-02-25 03:39:53 UTC
FEDORA-2023-08e065d25d has been pushed to the Fedora 38 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-08e065d25d

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Fedora Update System 2023-02-25 04:35:39 UTC
FEDORA-2023-2dedbef650 has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-2dedbef650 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-2dedbef650

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 12 Fedora Update System 2023-03-05 01:37:03 UTC
FEDORA-2023-2dedbef650 has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 13 John Wass 2023-03-05 19:47:46 UTC
> There have also been new releases of the pyo3-log crate (v0.8.0 and v0.8.1), but it looks like matrix-synapse
> depends on v0.7, so I would continue with the review of v0.7.0 and only update to a later version once
> matrix-synapse requires it?

It looks like pyo3-log @ 0.8.1 changed to a range for it's pyo3 dependency.  Not having that range, this pyo3-log does not appear to be compatible across available Fedora pyo3 versions (0.15/0.16/0.17).

A quick test here can be done with `cargo new ...` then `cargo add "pyo3@..."` and `cargo add "pyo3-log@..."`.

This package, at 0.7.0, is compatible with pyo3 0.17.  At 0.8.1 it could work across all available Fedora versions.

Comment 14 Fabio Valentini 2023-03-05 20:48:14 UTC
Well, for now, the only thing that matters is that it's compatible with what matrix-synapse needs.
As soon as they update their pyo3-log dependency, we can do so, too.

Comment 15 John Wass 2023-03-05 22:36:09 UTC
Ok. If a project needs to use pyo3-log with a currently unsupported pyo3 (0.15), should that request be in a new bz issue?

Comment 16 Fabio Valentini 2023-03-05 22:45:58 UTC
Yes. This is the ticket for the initial package review, which has concluded.
If you need a different version, please file a new bug against the Fedora / rust-pyo3-log component.

As far as I can tell (since you haven't given me any specifics of what you're working on), we have two options here:

1. Update rust-pyo3-log to v0.8.1, and add a rust-pyo3-log0.7 compat package that will be used by matrix-synapse.
2. Add a rust-pyo3-log0.5 compat package (which was the version originally targeted at pyo3 0.15).

I'm not sure how "compatible" pyo3-log 0.8 really is with older PyO3 versions, but if upstream claims it is ... well.

However: At this point, I'd rather not package any more software that depends on PyO3 v0.15.
That version has been obsolete for over a year, and I'd rather start to *drop* software that depends on it than add more ...
What are you working on that only supports pyo3 0.15?

Comment 17 John Wass 2023-03-05 23:21:31 UTC
> If you need a different version, please file a new bug against the Fedora / rust-pyo3-log component.

Ok, thanks. I will note that for future reference.

Wasn't trying to be vague, but wasn't sure if this was the right place for my details. Just wanted to quote that comment of yours describing the reasoning behind selecting 0.7, for context.

> What are you working on that only supports pyo3 0.15?

The other project is fapolicy-analyzer, which needs to support Python 3.6, which Pyo3 dropped support for starting @ 0.16. My Rust components are just now being bridged into the Python logger, otherwise I would have commented on this sooner.

> I'm not sure how "compatible" pyo3-log 0.8 really is with older PyO3 versions

I can't speak for much other than having plugged 0.8.1 into my project and it (1) compiles (2) writes the logs as expected.  Happy to help provide additional feedback if requested.

Comment 18 Fabio Valentini 2023-03-08 21:37:46 UTC
I've checked, and the latest matrix-synapse release also started depending on v0.8.1.
Since nothing in Fedora currently depends on pyo3-log, I've gone ahead and submitted updates for the package. :)

Comment 19 John Wass 2023-03-09 13:42:55 UTC
Thank you, this is very helpful!

I had a bz request coming for this, then one of my own bugs skipped line :/

Comment 20 Fedora Update System 2023-03-11 03:08:48 UTC
FEDORA-2023-08e065d25d has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.