Bug 1917089

Summary: Review Request: python-doubleratchet - Python implementation of the Double Ratchet algorithm
Product: [Fedora] Fedora Reporter: Matthieu Saulnier <casper>
Component: Package ReviewAssignee: Zbigniew Jędrzejewski-Szmek <zbyszek>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: code, package-review, zbyszek, zebob.m
Target Milestone: ---Flags: zbyszek: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-03-29 14:51:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1926523, 1927580    

Description Matthieu Saulnier 2021-01-17 04:39:17 UTC
Spec URL: https://fantom.fedorapeople.org/python-doubleratchet.spec
SRPM URL: https://fantom.fedorapeople.org/python-doubleratchet-0.7.0-1.fc31.src.rpm
Description: This python library offers an implementation of the Double Ratchet
algorithm.
Fedora Account System Username: fantom

scratch build:
rawhide: http://koji.fedoraproject.org/koji/taskinfo?taskID=59881999
f33: http://koji.fedoraproject.org/koji/taskinfo?taskID=59881997

Comment 1 Zbigniew Jędrzejewski-Szmek 2021-01-17 18:05:44 UTC
> # set upstream name variable
> %global srcname doubleratchet

That define is used in exactly one place. I think you might as well drop it and save three lines
and a little bit of obfuscation.

Maybe add this to the package description, so it's easier to guess what the package
is about:

> A double ratchet allows message encryption providing perfect forward secrecy. A double ratchet instance synchronizes with a second instance using Diffie-Hellman calculations, that are provided by the DHRatchet class.

Comment 2 Matthieu Saulnier 2021-02-09 03:09:32 UTC
(In reply to Zbigniew Jędrzejewski-Szmek from comment #1)
> > # set upstream name variable
> > %global srcname doubleratchet
> 
> That define is used in exactly one place. I think you might as well drop it
> and save three lines
> and a little bit of obfuscation.
> 
> Maybe add this to the package description, so it's easier to guess what the
> package
> is about:
> 
> > A double ratchet allows message encryption providing perfect forward secrecy. A double ratchet instance synchronizes with a second instance using Diffie-Hellman calculations, that are provided by the DHRatchet class.

Hi!

thanks for the remarks, I'm applying it on all of my packages actually in review state.

Spec URL: https://fantom.fedorapeople.org/python-doubleratchet.spec
SRPM URL: https://fantom.fedorapeople.org/python-doubleratchet-0.7.0-2.fc31.src.rpm

scratch build:
f34: https://koji.fedoraproject.org/koji/taskinfo?taskID=61635306

Comment 3 Zbigniew Jędrzejewski-Szmek 2021-02-09 07:30:53 UTC
The version specified in the package should match the actual version of the code.
Thus, you should have (https://docs.fedoraproject.org/en-US/packaging-guidelines/Versioning/#_prerelease_versions)

Version:        0.7.0~beta
...
Source0:        https://github.com/Syndace/%{name}/archive/v%{version_no_tilde}.tar.gz
%global version_main %(c=%version; echo $c|cut -d~ -f1)
...
%prep
%autosetup -n %{name}-%{version_no_tilde}
...
%files
%{python3_sitelib}/DoubleRatchet-%{version_main}-py%{python3_version}.egg-info/

(Generally, macros should be used for all parts that change between releases.)


I'd also do the following:
%global _description %{expand:
This python library offers an implementation of the Double Ratchet
algorithm.

A double ratchet allows message encryption providing perfect forward
secrecy. A double ratchet instance synchronizes with a second instance
using Diffie-Hellman calculations, that are provided by the DHRatchet
class.}

%description %_description
%description -n python3-doubleratchet %_description

Comment 4 Matthieu Saulnier 2021-02-15 05:05:24 UTC
I did new release with all of your remarks. I left %%description as simple as possible :)

New Spec URL: https://fantom.fedorapeople.org/python-doubleratchet.spec
New SRPM URL: https://fantom.fedorapeople.org/python-doubleratchet-0.7.0~beta-3.fc31.src.rpm

New copr build:
rawhide/f33: https://copr.fedorainfracloud.org/coprs/fantom/poezio-omemo/build/1965976/

Comment 5 Zbigniew Jędrzejewski-Szmek 2021-02-26 08:25:24 UTC
+ package name is OK
+ latest version
+ license is acceptable (MIT)
+ license is specified correctly
+ builds and installs OK
+ R/P/BR look OK

$ rpmlint results/*rpm 
2 packages and 0 specfiles checked; 0 errors, 0 warnings.

Package is APPROVED.

Comment 6 Robert-André Mauchin 🐧 2021-03-10 07:10:58 UTC
You should have generated the Sphinx docs here too.

Comment 7 Gwyn Ciesla 2021-03-29 13:34:30 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/python-doubleratchet